marv 0.3.2 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. data/.document +5 -0
  2. data/CHANGELOG.md +13 -0
  3. data/Gemfile +8 -10
  4. data/Gemfile.lock +16 -43
  5. data/LICENSE +0 -24
  6. data/README.md +9 -10
  7. data/Rakefile +4 -20
  8. data/VERSION +1 -1
  9. data/bin/marv +1 -1
  10. data/layouts/config/global.rb +31 -0
  11. data/layouts/config/project.rb +27 -0
  12. data/layouts/config/{router.php.erb → router.php} +5 -1
  13. data/layouts/config/server.rb +12 -0
  14. data/layouts/config/{wp-config.php.erb → wp-config.php} +0 -0
  15. data/layouts/plugin/{images → assets/images}/screenshot.png +0 -0
  16. data/layouts/plugin/{javascripts → assets/javascripts}/admin.coffee +0 -0
  17. data/layouts/plugin/{javascripts → assets/javascripts}/admin.js +0 -0
  18. data/layouts/plugin/{javascripts → assets/javascripts}/plugin.coffee +0 -0
  19. data/layouts/plugin/assets/javascripts/plugin.js +1 -0
  20. data/layouts/plugin/{stylesheets → assets/stylesheets}/plugin.scss +0 -0
  21. data/layouts/plugin/functions/{plugin.php.erb → plugin.php} +8 -7
  22. data/layouts/theme/{images → assets/images}/screenshot.png +0 -0
  23. data/layouts/theme/{javascripts → assets/javascripts}/admin.coffee +0 -0
  24. data/layouts/theme/{javascripts → assets/javascripts}/admin.js +0 -0
  25. data/layouts/theme/{javascripts → assets/javascripts}/theme.coffee +0 -0
  26. data/layouts/theme/{javascripts → assets/javascripts}/theme.js +0 -0
  27. data/layouts/theme/assets/stylesheets/_header.scss +18 -0
  28. data/layouts/theme/{stylesheets/style.scss.erb → assets/stylesheets/style.scss} +0 -0
  29. data/layouts/theme/functions/{functions.php.erb → functions.php} +0 -0
  30. data/layouts/theme/includes/{filters-admin.php.erb → filters-admin.php} +0 -0
  31. data/layouts/theme/includes/{filters.php.erb → filters.php} +0 -0
  32. data/layouts/theme/includes/{helpers.php.erb → helpers.php} +0 -0
  33. data/layouts/theme/templates/{404.php.erb → pages/404.php} +0 -0
  34. data/layouts/theme/templates/{archive.php.erb → pages/archive.php} +0 -0
  35. data/layouts/theme/templates/{author.php.erb → pages/author.php} +0 -0
  36. data/layouts/theme/templates/{search.php.erb → pages/search.php} +0 -0
  37. data/layouts/theme/templates/partials/{comments.php.erb → comments.php} +0 -0
  38. data/layouts/theme/templates/partials/{content-none.php.erb → content-none.php} +0 -0
  39. data/layouts/theme/templates/partials/{content.php.erb → content.php} +0 -0
  40. data/layouts/theme/templates/partials/{searchform.php.erb → searchform.php} +0 -0
  41. data/lib/marv.rb +8 -8
  42. data/lib/marv/cli.rb +15 -192
  43. data/lib/marv/cli/project.rb +57 -0
  44. data/lib/marv/cli/server.rb +65 -0
  45. data/lib/marv/global.rb +285 -0
  46. data/lib/marv/project/actions.rb +144 -0
  47. data/lib/marv/project/builder.rb +61 -0
  48. data/lib/marv/project/builder/assets.rb +112 -0
  49. data/lib/marv/{engines.rb → project/builder/engines.rb} +3 -1
  50. data/lib/marv/project/builder/functions.rb +112 -0
  51. data/lib/marv/project/builder/templates.rb +37 -0
  52. data/lib/marv/project/create.rb +139 -0
  53. data/lib/marv/project/guard.rb +83 -0
  54. data/lib/marv/project/guard/assets.rb +37 -0
  55. data/lib/{guard/marv → marv/project/guard}/config.rb +5 -9
  56. data/lib/marv/project/guard/functions.rb +44 -0
  57. data/lib/marv/project/guard/templates.rb +35 -0
  58. data/lib/marv/project/project.rb +149 -0
  59. data/lib/marv/server/actions.rb +79 -0
  60. data/lib/marv/server/create.rb +100 -0
  61. data/lib/marv/server/server.rb +201 -0
  62. data/marv.gemspec +69 -71
  63. metadata +82 -107
  64. data/.rspec +0 -1
  65. data/features/step_definitions/marv_steps.rb +0 -38
  66. data/features/support/env.rb +0 -17
  67. data/layouts/config/project-config.rb +0 -17
  68. data/layouts/plugin/javascripts/plugin.js +0 -1
  69. data/layouts/theme/stylesheets/_header.scss.erb +0 -18
  70. data/lib/guard/marv/assets.rb +0 -33
  71. data/lib/guard/marv/folders.rb +0 -33
  72. data/lib/guard/marv/functions.rb +0 -34
  73. data/lib/guard/marv/templates.rb +0 -33
  74. data/lib/marv/builder.rb +0 -355
  75. data/lib/marv/error.rb +0 -8
  76. data/lib/marv/generator.rb +0 -140
  77. data/lib/marv/guard.rb +0 -68
  78. data/lib/marv/project.rb +0 -134
  79. data/lib/marv/server.rb +0 -284
  80. data/spec/lib/marv/project_spec.rb +0 -34
  81. data/spec/spec_helper.rb +0 -12
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: marv
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2
4
+ version: 0.4.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2014-09-19 00:00:00.000000000 Z
13
+ date: 2014-09-30 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: thor
@@ -61,13 +61,13 @@ dependencies:
61
61
  - !ruby/object:Gem::Version
62
62
  version: 2.12.0
63
63
  - !ruby/object:Gem::Dependency
64
- name: rubyzip
64
+ name: childprocess
65
65
  requirement: !ruby/object:Gem::Requirement
66
66
  none: false
67
67
  requirements:
68
68
  - - ! '>='
69
69
  - !ruby/object:Gem::Version
70
- version: 1.1.6
70
+ version: 0.3.5
71
71
  type: :runtime
72
72
  prerelease: false
73
73
  version_requirements: !ruby/object:Gem::Requirement
@@ -75,15 +75,15 @@ dependencies:
75
75
  requirements:
76
76
  - - ! '>='
77
77
  - !ruby/object:Gem::Version
78
- version: 1.1.6
78
+ version: 0.3.5
79
79
  - !ruby/object:Gem::Dependency
80
- name: childprocess
80
+ name: mysql2
81
81
  requirement: !ruby/object:Gem::Requirement
82
82
  none: false
83
83
  requirements:
84
84
  - - ! '>='
85
85
  - !ruby/object:Gem::Version
86
- version: 0.3.5
86
+ version: 0.3.15
87
87
  type: :runtime
88
88
  prerelease: false
89
89
  version_requirements: !ruby/object:Gem::Requirement
@@ -91,15 +91,15 @@ dependencies:
91
91
  requirements:
92
92
  - - ! '>='
93
93
  - !ruby/object:Gem::Version
94
- version: 0.3.5
94
+ version: 0.3.15
95
95
  - !ruby/object:Gem::Dependency
96
- name: mysql2
96
+ name: uglifier
97
97
  requirement: !ruby/object:Gem::Requirement
98
98
  none: false
99
99
  requirements:
100
100
  - - ! '>='
101
101
  - !ruby/object:Gem::Version
102
- version: 0.3.15
102
+ version: 2.5.0
103
103
  type: :runtime
104
104
  prerelease: false
105
105
  version_requirements: !ruby/object:Gem::Requirement
@@ -107,7 +107,7 @@ dependencies:
107
107
  requirements:
108
108
  - - ! '>='
109
109
  - !ruby/object:Gem::Version
110
- version: 0.3.15
110
+ version: 2.5.0
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: sass
113
113
  requirement: !ruby/object:Gem::Requirement
@@ -173,13 +173,13 @@ dependencies:
173
173
  - !ruby/object:Gem::Version
174
174
  version: 0.12.0
175
175
  - !ruby/object:Gem::Dependency
176
- name: uglifier
176
+ name: rubyzip
177
177
  requirement: !ruby/object:Gem::Requirement
178
178
  none: false
179
179
  requirements:
180
180
  - - ! '>='
181
181
  - !ruby/object:Gem::Version
182
- version: 2.5.0
182
+ version: 1.1.6
183
183
  type: :runtime
184
184
  prerelease: false
185
185
  version_requirements: !ruby/object:Gem::Requirement
@@ -187,87 +187,55 @@ dependencies:
187
187
  requirements:
188
188
  - - ! '>='
189
189
  - !ruby/object:Gem::Version
190
- version: 2.5.0
191
- - !ruby/object:Gem::Dependency
192
- name: rake
193
- requirement: !ruby/object:Gem::Requirement
194
- none: false
195
- requirements:
196
- - - ! '>='
197
- - !ruby/object:Gem::Version
198
- version: '0'
199
- type: :development
200
- prerelease: false
201
- version_requirements: !ruby/object:Gem::Requirement
202
- none: false
203
- requirements:
204
- - - ! '>='
205
- - !ruby/object:Gem::Version
206
- version: '0'
207
- - !ruby/object:Gem::Dependency
208
- name: rspec
209
- requirement: !ruby/object:Gem::Requirement
210
- none: false
211
- requirements:
212
- - - ! '>='
213
- - !ruby/object:Gem::Version
214
- version: '0'
215
- type: :development
216
- prerelease: false
217
- version_requirements: !ruby/object:Gem::Requirement
218
- none: false
219
- requirements:
220
- - - ! '>='
221
- - !ruby/object:Gem::Version
222
- version: '0'
190
+ version: 1.1.6
223
191
  - !ruby/object:Gem::Dependency
224
- name: aruba
192
+ name: rdoc
225
193
  requirement: !ruby/object:Gem::Requirement
226
194
  none: false
227
195
  requirements:
228
- - - ! '>='
196
+ - - ~>
229
197
  - !ruby/object:Gem::Version
230
- version: '0'
198
+ version: '3.12'
231
199
  type: :development
232
200
  prerelease: false
233
201
  version_requirements: !ruby/object:Gem::Requirement
234
202
  none: false
235
203
  requirements:
236
- - - ! '>='
204
+ - - ~>
237
205
  - !ruby/object:Gem::Version
238
- version: '0'
206
+ version: '3.12'
239
207
  - !ruby/object:Gem::Dependency
240
- name: cucumber
208
+ name: bundler
241
209
  requirement: !ruby/object:Gem::Requirement
242
210
  none: false
243
211
  requirements:
244
- - - ! '>='
212
+ - - ~>
245
213
  - !ruby/object:Gem::Version
246
- version: '0'
214
+ version: '1.0'
247
215
  type: :development
248
216
  prerelease: false
249
217
  version_requirements: !ruby/object:Gem::Requirement
250
218
  none: false
251
219
  requirements:
252
- - - ! '>='
220
+ - - ~>
253
221
  - !ruby/object:Gem::Version
254
- version: '0'
222
+ version: '1.0'
255
223
  - !ruby/object:Gem::Dependency
256
224
  name: jeweler
257
225
  requirement: !ruby/object:Gem::Requirement
258
226
  none: false
259
227
  requirements:
260
- - - ! '>='
228
+ - - ~>
261
229
  - !ruby/object:Gem::Version
262
- version: '0'
230
+ version: 2.0.1
263
231
  type: :development
264
232
  prerelease: false
265
233
  version_requirements: !ruby/object:Gem::Requirement
266
234
  none: false
267
235
  requirements:
268
- - - ! '>='
236
+ - - ~>
269
237
  - !ruby/object:Gem::Version
270
- version: '0'
238
+ version: 2.0.1
271
239
  description: A toolkit for bootstrapping and developing WordPress themes and plugins
272
240
  using Sass, LESS, and CoffeeScript.
273
241
  email: info@hardpixel.eu
@@ -278,7 +246,7 @@ extra_rdoc_files:
278
246
  - LICENSE
279
247
  - README.md
280
248
  files:
281
- - .rspec
249
+ - .document
282
250
  - CHANGELOG.md
283
251
  - Gemfile
284
252
  - Gemfile.lock
@@ -287,63 +255,67 @@ files:
287
255
  - Rakefile
288
256
  - VERSION
289
257
  - bin/marv
290
- - features/step_definitions/marv_steps.rb
291
- - features/support/env.rb
292
- - layouts/config/project-config.rb
293
- - layouts/config/router.php.erb
294
- - layouts/config/wp-config.php.erb
295
- - layouts/plugin/functions/plugin.php.erb
296
- - layouts/plugin/images/screenshot.png
297
- - layouts/plugin/javascripts/admin.coffee
298
- - layouts/plugin/javascripts/admin.js
299
- - layouts/plugin/javascripts/plugin.coffee
300
- - layouts/plugin/javascripts/plugin.js
301
- - layouts/plugin/stylesheets/plugin.scss
302
- - layouts/theme/functions/functions.php.erb
303
- - layouts/theme/images/screenshot.png
304
- - layouts/theme/includes/filters-admin.php.erb
305
- - layouts/theme/includes/filters.php.erb
306
- - layouts/theme/includes/helpers.php.erb
307
- - layouts/theme/javascripts/admin.coffee
308
- - layouts/theme/javascripts/admin.js
309
- - layouts/theme/javascripts/theme.coffee
310
- - layouts/theme/javascripts/theme.js
311
- - layouts/theme/stylesheets/_header.scss.erb
312
- - layouts/theme/stylesheets/style.scss.erb
313
- - layouts/theme/templates/404.php.erb
314
- - layouts/theme/templates/archive.php.erb
315
- - layouts/theme/templates/author.php.erb
258
+ - layouts/config/global.rb
259
+ - layouts/config/project.rb
260
+ - layouts/config/router.php
261
+ - layouts/config/server.rb
262
+ - layouts/config/wp-config.php
263
+ - layouts/plugin/assets/images/screenshot.png
264
+ - layouts/plugin/assets/javascripts/admin.coffee
265
+ - layouts/plugin/assets/javascripts/admin.js
266
+ - layouts/plugin/assets/javascripts/plugin.coffee
267
+ - layouts/plugin/assets/javascripts/plugin.js
268
+ - layouts/plugin/assets/stylesheets/plugin.scss
269
+ - layouts/plugin/functions/plugin.php
270
+ - layouts/theme/assets/images/screenshot.png
271
+ - layouts/theme/assets/javascripts/admin.coffee
272
+ - layouts/theme/assets/javascripts/admin.js
273
+ - layouts/theme/assets/javascripts/theme.coffee
274
+ - layouts/theme/assets/javascripts/theme.js
275
+ - layouts/theme/assets/stylesheets/_header.scss
276
+ - layouts/theme/assets/stylesheets/style.scss
277
+ - layouts/theme/functions/functions.php
278
+ - layouts/theme/includes/filters-admin.php
279
+ - layouts/theme/includes/filters.php
280
+ - layouts/theme/includes/helpers.php
316
281
  - layouts/theme/templates/footer.php
317
282
  - layouts/theme/templates/header.php
318
283
  - layouts/theme/templates/index.php
319
284
  - layouts/theme/templates/page.php
320
- - layouts/theme/templates/partials/comments.php.erb
321
- - layouts/theme/templates/partials/content-none.php.erb
285
+ - layouts/theme/templates/pages/404.php
286
+ - layouts/theme/templates/pages/archive.php
287
+ - layouts/theme/templates/pages/author.php
288
+ - layouts/theme/templates/pages/search.php
289
+ - layouts/theme/templates/partials/comments.php
290
+ - layouts/theme/templates/partials/content-none.php
322
291
  - layouts/theme/templates/partials/content-page.php
323
292
  - layouts/theme/templates/partials/content-single.php
324
- - layouts/theme/templates/partials/content.php.erb
325
- - layouts/theme/templates/partials/searchform.php.erb
293
+ - layouts/theme/templates/partials/content.php
294
+ - layouts/theme/templates/partials/searchform.php
326
295
  - layouts/theme/templates/partials/sidebar.php
327
- - layouts/theme/templates/search.php.erb
328
296
  - layouts/theme/templates/single.php
329
- - lib/guard/marv/assets.rb
330
- - lib/guard/marv/config.rb
331
- - lib/guard/marv/folders.rb
332
- - lib/guard/marv/functions.rb
333
- - lib/guard/marv/templates.rb
334
297
  - lib/marv.rb
335
- - lib/marv/builder.rb
336
298
  - lib/marv/cli.rb
337
- - lib/marv/engines.rb
338
- - lib/marv/error.rb
339
- - lib/marv/generator.rb
340
- - lib/marv/guard.rb
341
- - lib/marv/project.rb
342
- - lib/marv/server.rb
343
- - marv-0.3.2.gem
299
+ - lib/marv/cli/project.rb
300
+ - lib/marv/cli/server.rb
301
+ - lib/marv/global.rb
302
+ - lib/marv/project/actions.rb
303
+ - lib/marv/project/builder.rb
304
+ - lib/marv/project/builder/assets.rb
305
+ - lib/marv/project/builder/engines.rb
306
+ - lib/marv/project/builder/functions.rb
307
+ - lib/marv/project/builder/templates.rb
308
+ - lib/marv/project/create.rb
309
+ - lib/marv/project/guard.rb
310
+ - lib/marv/project/guard/assets.rb
311
+ - lib/marv/project/guard/config.rb
312
+ - lib/marv/project/guard/functions.rb
313
+ - lib/marv/project/guard/templates.rb
314
+ - lib/marv/project/project.rb
315
+ - lib/marv/server/actions.rb
316
+ - lib/marv/server/create.rb
317
+ - lib/marv/server/server.rb
344
318
  - marv.gemspec
345
- - spec/lib/marv/project_spec.rb
346
- - spec/spec_helper.rb
347
319
  homepage: http://hardpixel.github.io/marv
348
320
  licenses:
349
321
  - MIT
@@ -357,6 +329,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
357
329
  - - ! '>='
358
330
  - !ruby/object:Gem::Version
359
331
  version: '0'
332
+ segments:
333
+ - 0
334
+ hash: 1860274097938123520
360
335
  required_rubygems_version: !ruby/object:Gem::Requirement
361
336
  none: false
362
337
  requirements:
data/.rspec DELETED
@@ -1 +0,0 @@
1
- --color
@@ -1,38 +0,0 @@
1
- Given /^I am in a marv project named "([^"]*)"$/ do |name|
2
- cli = Marv::CLI.new
3
-
4
- cli.shell.mute do
5
- Marv::Project.create(File.join(current_dir, name), {:name => name}, cli)
6
- end
7
-
8
- cd name
9
- end
10
-
11
- Given /^a WordPress installation exists at "([^"]*)"$/ do |directory|
12
- create_dir directory
13
- end
14
-
15
- Then /^the file "([^"]*)" should contain:$/ do |filename, content_partials|
16
- content_partials.raw.each do |content|
17
- check_file_content(filename, content[0], true)
18
- end
19
- end
20
-
21
- Then /^the marv skeleton should be created in directory "([^"]*)"$/ do |base_dir|
22
- skeleton_dirs = [
23
- ['assets', 'images'],
24
- ['assets', 'javascripts'],
25
- ['assets', 'stylesheets'],
26
-
27
- ['functions'],
28
-
29
- ['templates', 'core'],
30
- ['templates', 'custom', 'pages'],
31
- ['templates', 'custom', 'partials']
32
- ]
33
-
34
- skeleton_dirs.each do |skeleton_dir|
35
- full_path = File.join(base_dir, skeleton_dir)
36
- check_directory_presence([full_path], true)
37
- end
38
- end
@@ -1,17 +0,0 @@
1
- require 'bundler'
2
- begin
3
- Bundler.setup(:default, :development)
4
- rescue Bundler::BundlerError => e
5
- $stderr.puts e.message
6
- $stderr.puts "Run `bundle install` to install missing gems"
7
- exit e.status_code
8
- end
9
-
10
- file_path = Pathname.new(__FILE__).realpath
11
- libdir = File.join(File.dirname(File.dirname(File.dirname(file_path))), "lib")
12
- $LOAD_PATH.unshift(libdir) unless $LOAD_PATH.include?(libdir)
13
-
14
- require 'marv'
15
-
16
- require 'rspec/expectations'
17
- require 'aruba/cucumber'
@@ -1,17 +0,0 @@
1
- # WordPress theme information is stored in source/assets/stylesheets/_header.scss
2
-
3
- # JavaScript compression
4
- config[:compress_js] = false
5
-
6
- # Stylesheets compression
7
- config[:compress_css] = false
8
-
9
- # Enable livereload
10
- config[:livereload] = false
11
-
12
- # Additional assets
13
- # config[:additional_assets] = [['custom.js'], ['stylesheets', 'custom.css'], ['includes', 'javascripts', 'includes.js']]
14
-
15
- # You can also include additional Compass frameworks by requiring them:
16
- # require 'bourbon'
17
- # require 'neat'
@@ -1 +0,0 @@
1
- //=require 'theme'
@@ -1,18 +0,0 @@
1
- /*!
2
- * Theme Name: <%= config[:name].capitalize %>
3
- * Theme URI: <%= config[:uri] %>
4
- * Author: <%= config[:author] %>
5
- * Author URI: <%= config[:author_uri] %>
6
- * Description: <%= if config[:description] then config[:description] else 'Wordpress theme made with Marv.' end %>
7
- * Version: <%= if config[:version_number] then config[:version_number] else '0.1' end %>
8
- <% if config[:template] -%>
9
- * Template: <%= config[:template] %>
10
- <% end -%>
11
- * License: <%= if config[:license_name] then config[:license_name] else 'GPLv3' end %>
12
- * License URI: <%= if config[:license_uri] then config[:license_uri] else 'http://www.gnu.org/copyleft/gpl.html' end %>
13
- * Tags: <%= config[:tags].join(", ") if config[:tags] %>
14
- <%- unless config[:comments].nil? || config[:comments].empty? -%>
15
- *
16
- * <%= config[:comments] %>
17
- <%- end -%>
18
- */
@@ -1,33 +0,0 @@
1
- require 'guard'
2
- require 'guard/guard'
3
-
4
- module Guard
5
- class MarvAssets < ::Guard::Guard
6
-
7
- def initialize(watchers=[], options={})
8
- super
9
- end
10
-
11
- # Runs on marv watch
12
- def start
13
- build_assets("Building all assets", true)
14
- end
15
-
16
- # Runs on all command in guard console
17
- def run_all
18
- build_assets("Rebuilding all assets", true)
19
- end
20
-
21
- # Called on file(s) modifications
22
- def run_on_change(paths)
23
- build_assets("Assets have changed, rebuilding...", nil)
24
- end
25
-
26
- # Build assets
27
- def build_assets(message, clean)
28
- UI.info message
29
- ::Marv::Guard.builder.build_assets(clean)
30
- end
31
-
32
- end
33
- end