skellington 0.7.5 → 0.8.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.
- checksums.yaml +4 -4
- data/README.md +33 -6
- data/config/config.yaml +82 -63
- data/lib/jekyll/templates/.gitignore.eruby +2 -0
- data/lib/{templates → jekyll/templates}/.ruby-version.eruby +0 -0
- data/lib/jekyll/templates/Gemfile.eruby +7 -0
- data/lib/{templates → jekyll/templates}/LICENSE.md.eruby +0 -0
- data/lib/jekyll/templates/_config.yml.eruby +7 -0
- data/lib/jekyll/templates/_layouts/default.html.eruby +29 -0
- data/lib/jekyll/templates/_sass/bootstrap-custom.scss.eruby +1 -0
- data/lib/jekyll/templates/_sass/fonts.scss.eruby +4 -0
- data/lib/jekyll/templates/assets/application.scss.eruby +6 -0
- data/lib/jekyll/templates/index.md.eruby +4 -0
- data/lib/jekyll/templates/post-run.eruby +21 -0
- data/lib/{templates → sinatra/templates}/.gitignore.eruby +0 -0
- data/lib/{templates → sinatra/templates}/.rspec.eruby +0 -0
- data/lib/sinatra/templates/.ruby-version.eruby +1 -0
- data/lib/{templates → sinatra/templates}/Gemfile.eruby +0 -0
- data/lib/{templates → sinatra/templates}/Guardfile.eruby +0 -0
- data/lib/sinatra/templates/LICENSE.md.eruby +27 -0
- data/lib/{templates → sinatra/templates}/Procfile.eruby +0 -0
- data/lib/{templates → sinatra/templates}/Rakefile.eruby +0 -0
- data/lib/{templates → sinatra/templates}/config.rb.eruby +0 -0
- data/lib/{templates → sinatra/templates}/config.ru.eruby +0 -0
- data/lib/{templates → sinatra/templates}/config/config.yml.eruby +0 -0
- data/lib/{templates → sinatra/templates}/lib/app.rb.eruby +0 -0
- data/lib/{templates → sinatra/templates}/lib/app/helpers.rb.eruby +0 -0
- data/lib/{templates → sinatra/templates}/lib/app/racks.rb.eruby +0 -0
- data/lib/{templates → sinatra/templates}/post-run.eruby +0 -0
- data/lib/{templates → sinatra/templates}/public/assets/favicon.ico.eruby +0 -0
- data/lib/{templates → sinatra/templates}/public/css/styles.css.eruby +0 -0
- data/lib/{templates → sinatra/templates}/public/js/app.js.eruby +0 -0
- data/lib/{templates → sinatra/templates}/public/sass/_fonts.scss.eruby +0 -0
- data/lib/{templates → sinatra/templates}/public/sass/_footer.scss.eruby +0 -0
- data/lib/{templates → sinatra/templates}/public/sass/_github-corner.scss.eruby +0 -0
- data/lib/{templates → sinatra/templates}/public/sass/_variables.scss.eruby +0 -0
- data/lib/{templates → sinatra/templates}/public/sass/styles.scss.eruby +0 -0
- data/lib/{templates → sinatra/templates}/spec/app/app_spec.rb.eruby +0 -0
- data/lib/{templates → sinatra/templates}/spec/app/helpers_spec.rb.eruby +0 -0
- data/lib/{templates → sinatra/templates}/spec/javascripts/app_spec.js.eruby +0 -0
- data/lib/{templates → sinatra/templates}/spec/javascripts/support/jasmine.yml.eruby +0 -0
- data/lib/{templates → sinatra/templates}/spec/javascripts/support/jasmine_helper.rb.eruby +0 -0
- data/lib/{templates → sinatra/templates}/spec/spec_helper.rb.eruby +0 -0
- data/lib/{templates → sinatra/templates}/views/default.erb.eruby +0 -0
- data/lib/{templates → sinatra/templates}/views/includes/footer.erb.eruby +0 -0
- data/lib/{templates → sinatra/templates}/views/includes/github-corner.erb.eruby +0 -0
- data/lib/{templates → sinatra/templates}/views/includes/header.erb.eruby +0 -0
- data/lib/{templates → sinatra/templates}/views/index.erb.eruby +0 -0
- data/lib/skellington.rb +1 -0
- data/lib/skellington/cli.rb +9 -2
- data/lib/skellington/generator.rb +17 -4
- data/lib/skellington/template.rb +1 -1
- data/lib/skellington/version.rb +1 -1
- data/skellington.gemspec +1 -0
- data/spec/jekyll/cli/assets_css_spec.rb +23 -0
- data/spec/jekyll/cli/bootstrap_spec.rb +48 -0
- data/spec/jekyll/cli/config_yml_spec.rb +23 -0
- data/spec/jekyll/cli/gemfile_spec.rb +23 -0
- data/spec/jekyll/cli/git_spec.rb +20 -0
- data/spec/jekyll/cli/index_md.rb +22 -0
- data/spec/jekyll/cli/layout_spec.rb +45 -0
- data/spec/jekyll/cli/license_spec.rb +75 -0
- data/spec/jekyll/cli/rbenv_spec.rb +17 -0
- data/spec/jekyll/cli_spec.rb +29 -0
- data/spec/{cli/non_local_path_spec.rb → non_local_path_spec.rb} +0 -0
- data/spec/{cli → sinatra/cli}/app_spec.rb +0 -0
- data/spec/{cli → sinatra/cli}/config_rb_spec.rb +0 -0
- data/spec/{cli → sinatra/cli}/config_ru_spec.rb +0 -0
- data/spec/{cli → sinatra/cli}/config_yml_spec.rb +0 -0
- data/spec/{cli → sinatra/cli}/gemfile_spec.rb +0 -0
- data/spec/{cli → sinatra/cli}/git_spec.rb +0 -0
- data/spec/{cli → sinatra/cli}/guardfile_spec.rb +0 -0
- data/spec/{cli → sinatra/cli}/helpers_spec.rb +0 -0
- data/spec/{cli → sinatra/cli}/includes_spec.rb +0 -0
- data/spec/{cli → sinatra/cli}/javascript_spec.rb +0 -0
- data/spec/{cli → sinatra/cli}/layout_spec.rb +0 -0
- data/spec/{cli → sinatra/cli}/license_spec.rb +0 -0
- data/spec/{cli → sinatra/cli}/procfile_spec.rb +0 -0
- data/spec/{cli → sinatra/cli}/public_spec.rb +0 -0
- data/spec/{cli → sinatra/cli}/racks_spec.rb +0 -0
- data/spec/{cli → sinatra/cli}/rakefile_spec.rb +0 -0
- data/spec/{cli → sinatra/cli}/rbenv_spec.rb +0 -0
- data/spec/{cli → sinatra/cli}/spec_spec.rb +0 -0
- data/spec/{cli_spec.rb → sinatra/cli_spec.rb} +0 -0
- metadata +121 -76
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 886c478b322c50a0f3c3a8e29e1bc3ce56dd59e3
|
|
4
|
+
data.tar.gz: 705530bf4057bc67968e1606bd7cb13691e622f9
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: e012948ea968469cf6f322c3808258b6eca2d32ca1e494e7a499019315c02b4f89b3e78b0c7303850df41eea76bc1b58dfafe1a37f926578382436614fde33b1
|
|
7
|
+
data.tar.gz: 35ccdd189ca0ddeb9f06f11dc0ac1ca3248aeca35de1b8f8fe5dffec82ab3e4c81ed816d5de295ff90a86f26f7f004cfe1128335b743a16b73280893b3d79568
|
data/README.md
CHANGED
|
@@ -8,13 +8,18 @@
|
|
|
8
8
|
|
|
9
9
|
# Skellington
|
|
10
10
|
|
|
11
|
-
Extremely opinionated generator for your [Sinatra](http://www.sinatrarb.com/)
|
|
11
|
+
Extremely opinionated generator for your [Sinatra](http://www.sinatrarb.com/) app or [Jekyll](https://jekyllrb.com/) site. Sets up:
|
|
12
12
|
|
|
13
|
-
*
|
|
14
|
-
* [
|
|
15
|
-
* [
|
|
16
|
-
* [
|
|
17
|
-
*
|
|
13
|
+
* Sinatra
|
|
14
|
+
* [Rspec](http://rspec.info/)
|
|
15
|
+
* [Jasmine](http://jasmine.github.io/2.0/introduction.html)
|
|
16
|
+
* [Bootstrap](http://getbootstrap.com/)
|
|
17
|
+
* [Compass](http://compass-style.org/)
|
|
18
|
+
* An MIT License file
|
|
19
|
+
|
|
20
|
+
* Jekyll
|
|
21
|
+
* [Bootstrap](http://getbootstrap.com/)
|
|
22
|
+
* Reasonable default things
|
|
18
23
|
|
|
19
24
|
Should work fine for both RVM- and rbenv-based setups
|
|
20
25
|
|
|
@@ -47,6 +52,28 @@ Should work fine for both RVM- and rbenv-based setups
|
|
|
47
52
|
|
|
48
53
|
skellington postinstall
|
|
49
54
|
|
|
55
|
+
or
|
|
56
|
+
|
|
57
|
+
skellington generate jekyll-site --framework jekyll
|
|
58
|
+
Generating <lots of stuff>... done
|
|
59
|
+
|
|
60
|
+
Your new Jekyll site JekyllSite has been created
|
|
61
|
+
|
|
62
|
+
(Note that 'jekyll-site' has been changed to 'jekyll_site' because Ruby finds '-'s troubling)
|
|
63
|
+
|
|
64
|
+
Now do
|
|
65
|
+
|
|
66
|
+
cd jekyll_site
|
|
67
|
+
bundle
|
|
68
|
+
bundle exec jekyll
|
|
69
|
+
|
|
70
|
+
which will launch the site (at http://localhost:4000)
|
|
71
|
+
|
|
72
|
+
And presuming that works OK
|
|
73
|
+
|
|
74
|
+
git add .
|
|
75
|
+
git commit -m 'First commit'
|
|
76
|
+
|
|
50
77
|
This assumes a bunch of things, at least:
|
|
51
78
|
|
|
52
79
|
* That you have a reasonable git installation
|
data/config/config.yaml
CHANGED
|
@@ -1,65 +1,84 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
sinatra:
|
|
2
|
+
gems:
|
|
3
|
+
production:
|
|
4
|
+
sinatra: 1.4
|
|
5
|
+
rack-conneg:
|
|
6
|
+
rack-tracker:
|
|
7
|
+
rake:
|
|
8
|
+
compass:
|
|
9
|
+
bootstrap-sass:
|
|
10
|
+
erubis:
|
|
11
|
+
puma:
|
|
12
|
+
test:
|
|
13
|
+
rspec:
|
|
14
|
+
guard:
|
|
15
|
+
guard-rspec:
|
|
16
|
+
guard-jasmine:
|
|
17
|
+
capybara:
|
|
18
|
+
coveralls:
|
|
19
|
+
jasmine:
|
|
20
|
+
pry:
|
|
21
|
+
actionpack:
|
|
22
|
+
|
|
23
|
+
files:
|
|
24
|
+
Gemfile:
|
|
25
|
+
LICENSE.md:
|
|
26
|
+
Guardfile:
|
|
27
|
+
Rakefile:
|
|
28
|
+
Procfile:
|
|
29
|
+
.ruby-version:
|
|
30
|
+
.rspec:
|
|
31
|
+
.gitignore:
|
|
32
|
+
config.ru:
|
|
33
|
+
config.rb:
|
|
34
|
+
config/config.yml:
|
|
35
|
+
# the template has this name
|
|
36
|
+
lib/app.rb:
|
|
37
|
+
# but the output file substitutes it like this, where wormname is an attribute
|
|
38
|
+
# on the Generator object
|
|
39
|
+
outpath: app/wormname
|
|
40
|
+
lib/app/racks.rb:
|
|
41
|
+
outpath: app/wormname/racks
|
|
42
|
+
lib/app/helpers.rb:
|
|
43
|
+
outpath: app/wormname/helpers
|
|
44
|
+
views/default.erb:
|
|
45
|
+
views/index.erb:
|
|
46
|
+
views/includes/header.erb:
|
|
47
|
+
views/includes/footer.erb:
|
|
48
|
+
views/includes/github-corner.erb:
|
|
49
|
+
spec/spec_helper.rb:
|
|
50
|
+
spec/app/helpers_spec.rb:
|
|
51
|
+
outpath: app/wormname
|
|
52
|
+
spec/app/app_spec.rb:
|
|
53
|
+
outpath: app/wormname
|
|
54
|
+
spec/javascripts/support/jasmine.yml:
|
|
55
|
+
spec/javascripts/support/jasmine_helper.rb:
|
|
56
|
+
spec/javascripts/app_spec.js:
|
|
57
|
+
outpath: app/wormname
|
|
58
|
+
public/assets/favicon.ico:
|
|
59
|
+
public/css/styles.css:
|
|
60
|
+
public/js/app.js:
|
|
61
|
+
outpath: app/wormname
|
|
62
|
+
public/sass/_footer.scss:
|
|
63
|
+
public/sass/_fonts.scss:
|
|
64
|
+
public/sass/_github-corner.scss:
|
|
65
|
+
public/sass/_variables.scss:
|
|
66
|
+
public/sass/styles.scss:
|
|
67
|
+
|
|
68
|
+
jekyll:
|
|
69
|
+
gems:
|
|
70
|
+
github-pages:
|
|
71
|
+
bootstrap: '4.0.0.alpha4'
|
|
6
72
|
rake:
|
|
7
|
-
compass:
|
|
8
|
-
bootstrap-sass:
|
|
9
|
-
erubis:
|
|
10
|
-
puma:
|
|
11
|
-
test:
|
|
12
|
-
rspec:
|
|
13
|
-
guard:
|
|
14
|
-
guard-rspec:
|
|
15
|
-
guard-jasmine:
|
|
16
|
-
capybara:
|
|
17
|
-
coveralls:
|
|
18
|
-
jasmine:
|
|
19
|
-
pry:
|
|
20
|
-
actionpack:
|
|
21
73
|
|
|
22
|
-
files:
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
config/config.yml:
|
|
34
|
-
# the template has this name
|
|
35
|
-
lib/app.rb:
|
|
36
|
-
# but the output file substitutes it like this, where wormname is an attribute
|
|
37
|
-
# on the Generator object
|
|
38
|
-
outpath: app/wormname
|
|
39
|
-
lib/app/racks.rb:
|
|
40
|
-
outpath: app/wormname/racks
|
|
41
|
-
lib/app/helpers.rb:
|
|
42
|
-
outpath: app/wormname/helpers
|
|
43
|
-
views/default.erb:
|
|
44
|
-
views/index.erb:
|
|
45
|
-
views/includes/header.erb:
|
|
46
|
-
views/includes/footer.erb:
|
|
47
|
-
views/includes/github-corner.erb:
|
|
48
|
-
spec/spec_helper.rb:
|
|
49
|
-
spec/app/helpers_spec.rb:
|
|
50
|
-
outpath: app/wormname
|
|
51
|
-
spec/app/app_spec.rb:
|
|
52
|
-
outpath: app/wormname
|
|
53
|
-
spec/javascripts/support/jasmine.yml:
|
|
54
|
-
spec/javascripts/support/jasmine_helper.rb:
|
|
55
|
-
spec/javascripts/app_spec.js:
|
|
56
|
-
outpath: app/wormname
|
|
57
|
-
public/assets/favicon.ico:
|
|
58
|
-
public/css/styles.css:
|
|
59
|
-
public/js/app.js:
|
|
60
|
-
outpath: app/wormname
|
|
61
|
-
public/sass/_footer.scss:
|
|
62
|
-
public/sass/_fonts.scss:
|
|
63
|
-
public/sass/_github-corner.scss:
|
|
64
|
-
public/sass/_variables.scss:
|
|
65
|
-
public/sass/styles.scss:
|
|
74
|
+
files:
|
|
75
|
+
Gemfile:
|
|
76
|
+
_config.yml:
|
|
77
|
+
.gitignore:
|
|
78
|
+
index.md:
|
|
79
|
+
_layouts/default.html:
|
|
80
|
+
assets/application.scss:
|
|
81
|
+
_sass/bootstrap-custom.scss:
|
|
82
|
+
_sass/fonts.scss:
|
|
83
|
+
LICENSE.md:
|
|
84
|
+
.ruby-version:
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang='en'>
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset='utf-8' />
|
|
5
|
+
<meta http-equiv='X-UA-Compatible' content='IE=edge' />
|
|
6
|
+
<meta name='viewport' content='width=device-width, initial-scale=1' />
|
|
7
|
+
|
|
8
|
+
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
|
|
9
|
+
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
|
|
10
|
+
<!--[if lt IE 9]>
|
|
11
|
+
<script src='https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js'></script>
|
|
12
|
+
<script src='https://oss.maxcdn.com/respond/1.4.2/respond.min.js'></script>
|
|
13
|
+
<![endif]-->
|
|
14
|
+
|
|
15
|
+
<!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
|
|
16
|
+
<script src='https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js'></script>
|
|
17
|
+
<!-- Include all compiled plugins (below), or include individual files as needed -->
|
|
18
|
+
<script src='/javascripts/bootstrap.min.js'></script>
|
|
19
|
+
|
|
20
|
+
<link rel='stylesheet' href='/assets/application.css' type='text/css' />
|
|
21
|
+
<title>{{ page.title }}</title>
|
|
22
|
+
</head>
|
|
23
|
+
|
|
24
|
+
<body>
|
|
25
|
+
<div class='container'>
|
|
26
|
+
{{ content }}
|
|
27
|
+
</div>
|
|
28
|
+
</body>
|
|
29
|
+
</html>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
$brand-primary: #fa8100;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
|
|
2
|
+
Your new Jekyll site <%= @gen.camelname %> has been created
|
|
3
|
+
|
|
4
|
+
<% if @gen.renamed %>
|
|
5
|
+
(Note that '<%= @gen.filename %>' has been changed to '<%= @gen.wormname %>' because Ruby finds '-'s troubling)
|
|
6
|
+
|
|
7
|
+
<% end %>
|
|
8
|
+
Now do
|
|
9
|
+
|
|
10
|
+
cd <%= @gen.wormname %>
|
|
11
|
+
bundle
|
|
12
|
+
bundle exec jekyll
|
|
13
|
+
|
|
14
|
+
which will launch the site (at http://localhost:4000)
|
|
15
|
+
|
|
16
|
+
And presuming that works OK
|
|
17
|
+
|
|
18
|
+
git add .
|
|
19
|
+
git commit -m 'First commit'
|
|
20
|
+
|
|
21
|
+
You should also fill in your name in LICENSE.md
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<%= RUBY_VERSION %>
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
<% if @gen.licensor %>
|
|
2
|
+
<% l = @gen.licensor %>
|
|
3
|
+
<% else %>
|
|
4
|
+
<% l = 'YOUR-NAME-HERE' %>
|
|
5
|
+
<% end %>
|
|
6
|
+
##Copyright (c) <%= Time.new.strftime "%Y" %> <%= l %>
|
|
7
|
+
|
|
8
|
+
#MIT License
|
|
9
|
+
|
|
10
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
|
11
|
+
a copy of this software and associated documentation files (the
|
|
12
|
+
'Software'), to deal in the Software without restriction, including
|
|
13
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
|
14
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
|
15
|
+
permit persons to whom the Software is furnished to do so, subject to
|
|
16
|
+
the following conditions:
|
|
17
|
+
|
|
18
|
+
The above copyright notice and this permission notice shall be
|
|
19
|
+
included in all copies or substantial portions of the Software.
|
|
20
|
+
|
|
21
|
+
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
|
|
22
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
23
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
24
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
25
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
26
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
27
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
data/lib/skellington.rb
CHANGED
data/lib/skellington/cli.rb
CHANGED
|
@@ -6,12 +6,19 @@ module Skellington
|
|
|
6
6
|
end
|
|
7
7
|
map %w(-v --version) => :version
|
|
8
8
|
|
|
9
|
-
desc 'generate some_path', 'Generate a skeleton
|
|
9
|
+
desc 'generate some_path', 'Generate a skeleton app named SomePath at some_path'
|
|
10
|
+
method_option :framework,
|
|
11
|
+
default: 'sinatra',
|
|
12
|
+
description: 'Framework to generate for',
|
|
13
|
+
enum: [
|
|
14
|
+
'sinatra',
|
|
15
|
+
'jekyll'
|
|
16
|
+
]
|
|
10
17
|
method_option :licensor,
|
|
11
18
|
aliases: '-l',
|
|
12
19
|
description: 'Name to insert into the license file'
|
|
13
20
|
def generate wormname
|
|
14
|
-
@g = Generator.new wormname
|
|
21
|
+
@g = Generator.new wormname, options
|
|
15
22
|
@g.licensor = options[:licensor]
|
|
16
23
|
@g.run
|
|
17
24
|
end
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
module Skellington
|
|
2
2
|
class Generator
|
|
3
|
-
attr_reader :path, :filename, :camelname, :files, :gems
|
|
3
|
+
attr_reader :path, :filename, :camelname, :files, :gems, :framework
|
|
4
4
|
attr_accessor :licensor
|
|
5
5
|
|
|
6
|
-
def initialize path
|
|
6
|
+
def initialize path, options = {}
|
|
7
|
+
@framework = options[:framework] ? options[:framework] : 'sinatra'
|
|
7
8
|
@full_path = path
|
|
8
9
|
@path = File.dirname @full_path
|
|
9
10
|
@filename = File.basename(@full_path)
|
|
10
11
|
@camelname = Skellington.camelise(wormname)
|
|
11
|
-
@gems = config['gems']
|
|
12
|
-
@files = config['files']
|
|
12
|
+
@gems = config[@framework]['gems']
|
|
13
|
+
@files = config[@framework]['files']
|
|
13
14
|
end
|
|
14
15
|
|
|
15
16
|
def config
|
|
@@ -32,6 +33,18 @@ module Skellington
|
|
|
32
33
|
t = Template.new k, self
|
|
33
34
|
t.write
|
|
34
35
|
end
|
|
36
|
+
|
|
37
|
+
if @framework == 'jekyll'
|
|
38
|
+
root = "#{self.path}/#{self.wormname}"
|
|
39
|
+
|
|
40
|
+
FileUtils.mkdir_p "#{root}/javascripts"
|
|
41
|
+
FileUtils.cp_r "#{Bootstrap.assets_path}/javascripts/bootstrap", "#{root}/javascripts"
|
|
42
|
+
FileUtils.cp "#{Bootstrap.assets_path}/javascripts/bootstrap.min.js", "#{root}/javascripts"
|
|
43
|
+
|
|
44
|
+
FileUtils.mkdir_p "#{root}/_sass"
|
|
45
|
+
FileUtils.cp_r "#{Bootstrap.assets_path}/stylesheets/bootstrap", "#{root}/_sass"
|
|
46
|
+
FileUtils.cp "#{Bootstrap.assets_path}/stylesheets/_bootstrap.scss", "#{root}/_sass/bootstrap.scss"
|
|
47
|
+
end
|
|
35
48
|
end
|
|
36
49
|
|
|
37
50
|
def wormname
|
data/lib/skellington/template.rb
CHANGED
data/lib/skellington/version.rb
CHANGED
data/skellington.gemspec
CHANGED
|
@@ -21,6 +21,7 @@ Gem::Specification.new do |spec|
|
|
|
21
21
|
spec.add_dependency 'thor', '~> 0.19'
|
|
22
22
|
spec.add_dependency 'erubis', '~> 2.7'
|
|
23
23
|
spec.add_dependency 'git', '~> 1.2'
|
|
24
|
+
spec.add_dependency 'bootstrap', '~> 4.0.0.alpha4'
|
|
24
25
|
|
|
25
26
|
spec.add_development_dependency 'coveralls', '~> 0.7'
|
|
26
27
|
spec.add_development_dependency 'bundler', '~> 1.7'
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
module Skellington
|
|
2
|
+
describe CLI do
|
|
3
|
+
let :subject do
|
|
4
|
+
described_class.new
|
|
5
|
+
end
|
|
6
|
+
|
|
7
|
+
it 'sets us sass' do
|
|
8
|
+
subject.options = { framework: 'jekyll' }
|
|
9
|
+
subject.generate 'dummy_app'
|
|
10
|
+
|
|
11
|
+
expect('dummy_app/assets/application.scss').to have_content (
|
|
12
|
+
"""
|
|
13
|
+
---
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
@import 'bootstrap-custom';
|
|
17
|
+
@import 'bootstrap';
|
|
18
|
+
@import 'fonts';
|
|
19
|
+
"""
|
|
20
|
+
)
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
module Skellington
|
|
2
|
+
describe CLI do
|
|
3
|
+
let :subject do
|
|
4
|
+
described_class.new
|
|
5
|
+
end
|
|
6
|
+
|
|
7
|
+
it 'installs bootstrap' do
|
|
8
|
+
subject.options = { framework: 'jekyll' }
|
|
9
|
+
subject.generate 'dummy_app'
|
|
10
|
+
|
|
11
|
+
expect(Dir).to exist 'dummy_app/javascripts/bootstrap'
|
|
12
|
+
expect('dummy_app/javascripts/bootstrap.min.js').to have_content (
|
|
13
|
+
"""
|
|
14
|
+
/*!
|
|
15
|
+
* Bootstrap v4.0.0-alpha.4 (http://getbootstrap.com)
|
|
16
|
+
* Copyright 2011-2016 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
|
17
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
|
18
|
+
*/
|
|
19
|
+
"""
|
|
20
|
+
)
|
|
21
|
+
|
|
22
|
+
expect(Dir).to exist 'dummy_app/_sass/bootstrap'
|
|
23
|
+
expect('dummy_app/_sass/bootstrap.scss').to have_content (
|
|
24
|
+
"""
|
|
25
|
+
/*!
|
|
26
|
+
* Bootstrap v4.0.0-alpha.4 (http://getbootstrap.com)
|
|
27
|
+
* Copyright 2011-2016 The Bootstrap Authors
|
|
28
|
+
* Copyright 2011-2016 Twitter, Inc.
|
|
29
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
|
30
|
+
*/
|
|
31
|
+
"""
|
|
32
|
+
)
|
|
33
|
+
expect('dummy_app/_sass/bootstrap-custom.scss').to have_content (
|
|
34
|
+
"""
|
|
35
|
+
$brand-primary: #fa8100;
|
|
36
|
+
"""
|
|
37
|
+
)
|
|
38
|
+
expect('dummy_app/_sass/fonts.scss').to have_content (
|
|
39
|
+
"""
|
|
40
|
+
@import url(http://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css);
|
|
41
|
+
@import url(http://fonts.googleapis.com/css?family=Ubuntu+Mono);
|
|
42
|
+
|
|
43
|
+
$font-family-san-serif: 'Ubuntu Mono'
|
|
44
|
+
"""
|
|
45
|
+
)
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
module Skellington
|
|
2
|
+
describe CLI do
|
|
3
|
+
let :subject do
|
|
4
|
+
described_class.new
|
|
5
|
+
end
|
|
6
|
+
|
|
7
|
+
it 'generates a _config.yml file' do
|
|
8
|
+
subject.options = { framework: 'jekyll' }
|
|
9
|
+
subject.generate 'dummy_app'
|
|
10
|
+
expect('dummy_app/_config.yml').to have_content (
|
|
11
|
+
"""
|
|
12
|
+
---
|
|
13
|
+
defaults:
|
|
14
|
+
- scope:
|
|
15
|
+
path: ''
|
|
16
|
+
values:
|
|
17
|
+
layout: default
|
|
18
|
+
permalink: pretty
|
|
19
|
+
"""
|
|
20
|
+
)
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
module Skellington
|
|
2
|
+
describe CLI do
|
|
3
|
+
let :subject do
|
|
4
|
+
described_class.new
|
|
5
|
+
end
|
|
6
|
+
|
|
7
|
+
it 'generates a Gemfile' do
|
|
8
|
+
subject.options = { framework: 'jekyll' }
|
|
9
|
+
subject.generate 'dummy_app'
|
|
10
|
+
expect('dummy_app/Gemfile').to have_content (
|
|
11
|
+
"""
|
|
12
|
+
source 'https://rubygems.org'
|
|
13
|
+
|
|
14
|
+
/ruby '[0-9]*\\.[0-9]*\\.[0-9]*'/
|
|
15
|
+
|
|
16
|
+
gem 'github-pages'
|
|
17
|
+
gem 'bootstrap', '~> 4.0.0.alpha4'
|
|
18
|
+
gem 'rake'
|
|
19
|
+
"""
|
|
20
|
+
)
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
module Skellington
|
|
2
|
+
describe CLI do
|
|
3
|
+
let :subject do
|
|
4
|
+
described_class.new
|
|
5
|
+
end
|
|
6
|
+
|
|
7
|
+
it 'initialises a git repo' do
|
|
8
|
+
subject.options = { framework: 'jekyll' }
|
|
9
|
+
subject.generate 'dummy_app'
|
|
10
|
+
expect(Dir).to exist 'dummy_app/.git'
|
|
11
|
+
|
|
12
|
+
expect('dummy_app/.gitignore').to have_content (
|
|
13
|
+
"""
|
|
14
|
+
_site/
|
|
15
|
+
.sass-cache
|
|
16
|
+
"""
|
|
17
|
+
)
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
module Skellington
|
|
2
|
+
describe CLI do
|
|
3
|
+
let :subject do
|
|
4
|
+
described_class.new
|
|
5
|
+
end
|
|
6
|
+
|
|
7
|
+
it 'creates a default index page' do
|
|
8
|
+
subject.options = { framework: 'jekyll' }
|
|
9
|
+
subject.generate 'dummy_app'
|
|
10
|
+
expect(Dir).to exist 'dummy_app/index.md'
|
|
11
|
+
|
|
12
|
+
expect('dummy_app/.gitignore').to have_content (
|
|
13
|
+
"""
|
|
14
|
+
---
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
# Hold tight DummyApp
|
|
18
|
+
"""
|
|
19
|
+
)
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
module Skellington
|
|
2
|
+
describe CLI do
|
|
3
|
+
let :subject do
|
|
4
|
+
described_class.new
|
|
5
|
+
end
|
|
6
|
+
|
|
7
|
+
it 'generates a default layout' do
|
|
8
|
+
subject.options = { framework: 'jekyll' }
|
|
9
|
+
subject.generate 'dummy_app'
|
|
10
|
+
expect('dummy_app/_layouts/default.html').to have_content (
|
|
11
|
+
"""
|
|
12
|
+
<!DOCTYPE html>
|
|
13
|
+
<html lang='en'>
|
|
14
|
+
<head>
|
|
15
|
+
<meta charset='utf-8' />
|
|
16
|
+
<meta http-equiv='X-UA-Compatible' content='IE=edge' />
|
|
17
|
+
<meta name='viewport' content='width=device-width, initial-scale=1' />
|
|
18
|
+
|
|
19
|
+
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
|
|
20
|
+
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
|
|
21
|
+
<!--[if lt IE 9]>
|
|
22
|
+
<script src='https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js'></script>
|
|
23
|
+
<script src='https://oss.maxcdn.com/respond/1.4.2/respond.min.js'></script>
|
|
24
|
+
<![endif]-->
|
|
25
|
+
|
|
26
|
+
<!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
|
|
27
|
+
<script src='https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js'></script>
|
|
28
|
+
<!-- Include all compiled plugins (below), or include individual files as needed -->
|
|
29
|
+
<script src='/javascripts/bootstrap.min.js'></script>
|
|
30
|
+
|
|
31
|
+
<link rel='stylesheet' href='/assets/application.css' type='text/css' />
|
|
32
|
+
<title>{{ page.title }}</title>
|
|
33
|
+
</head>
|
|
34
|
+
|
|
35
|
+
<body>
|
|
36
|
+
<div class='container'>
|
|
37
|
+
{{ content }}
|
|
38
|
+
</div>
|
|
39
|
+
</body>
|
|
40
|
+
</html>
|
|
41
|
+
"""
|
|
42
|
+
)
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
module Skellington
|
|
2
|
+
describe CLI do
|
|
3
|
+
let :subject do
|
|
4
|
+
described_class.new
|
|
5
|
+
end
|
|
6
|
+
|
|
7
|
+
context 'generate a LICENSE' do
|
|
8
|
+
it 'plain license' do
|
|
9
|
+
Timecop.freeze Time.local 2016, 01, 19
|
|
10
|
+
subject.options = { framework: 'jekyll' }
|
|
11
|
+
subject.generate 'dummy_app'
|
|
12
|
+
expect('dummy_app/LICENSE.md').to have_content (
|
|
13
|
+
"""
|
|
14
|
+
##Copyright (c) 2016 YOUR-NAME-HERE
|
|
15
|
+
|
|
16
|
+
#MIT License
|
|
17
|
+
|
|
18
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
|
19
|
+
a copy of this software and associated documentation files (the
|
|
20
|
+
'Software'), to deal in the Software without restriction, including
|
|
21
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
|
22
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
|
23
|
+
permit persons to whom the Software is furnished to do so, subject to
|
|
24
|
+
the following conditions:
|
|
25
|
+
|
|
26
|
+
The above copyright notice and this permission notice shall be
|
|
27
|
+
included in all copies or substantial portions of the Software.
|
|
28
|
+
|
|
29
|
+
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
|
|
30
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
31
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
32
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
33
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
34
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
35
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
36
|
+
"""
|
|
37
|
+
)
|
|
38
|
+
Timecop.return
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
it 'with a provided name' do
|
|
42
|
+
Timecop.freeze Time.local 2016, 01, 19
|
|
43
|
+
subject.options = {licensor: 'Beyoncé'}
|
|
44
|
+
subject.generate 'dummy_app'
|
|
45
|
+
expect('dummy_app/LICENSE.md').to have_content (
|
|
46
|
+
"""
|
|
47
|
+
##Copyright (c) 2016 Beyoncé
|
|
48
|
+
|
|
49
|
+
#MIT License
|
|
50
|
+
|
|
51
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
|
52
|
+
a copy of this software and associated documentation files (the
|
|
53
|
+
'Software'), to deal in the Software without restriction, including
|
|
54
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
|
55
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
|
56
|
+
permit persons to whom the Software is furnished to do so, subject to
|
|
57
|
+
the following conditions:
|
|
58
|
+
|
|
59
|
+
The above copyright notice and this permission notice shall be
|
|
60
|
+
included in all copies or substantial portions of the Software.
|
|
61
|
+
|
|
62
|
+
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
|
|
63
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
64
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
65
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
66
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
67
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
68
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
69
|
+
"""
|
|
70
|
+
)
|
|
71
|
+
Timecop.return
|
|
72
|
+
end
|
|
73
|
+
end
|
|
74
|
+
end
|
|
75
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
module Skellington
|
|
2
|
+
describe CLI do
|
|
3
|
+
let :subject do
|
|
4
|
+
described_class.new
|
|
5
|
+
end
|
|
6
|
+
|
|
7
|
+
it 'generates a .ruby-version' do
|
|
8
|
+
subject.options = { framework: 'jekyll' }
|
|
9
|
+
expect { subject.generate 'dummy_app' }.to produce_file 'dummy_app/.ruby-version'
|
|
10
|
+
expect('dummy_app/.ruby-version').to have_content (
|
|
11
|
+
"""
|
|
12
|
+
/[0-9]*\\.[0-9]*\\.[0-9]*/
|
|
13
|
+
"""
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
module Skellington
|
|
2
|
+
describe CLI do
|
|
3
|
+
let :subject do
|
|
4
|
+
described_class.new
|
|
5
|
+
end
|
|
6
|
+
|
|
7
|
+
it 'generates correct output' do
|
|
8
|
+
subject.options = { framework: 'jekyll' }
|
|
9
|
+
expect { subject.generate 'dummy_app' }.to output(/
|
|
10
|
+
Your new Jekyll site DummyApp has been created
|
|
11
|
+
|
|
12
|
+
Now do
|
|
13
|
+
|
|
14
|
+
cd dummy_app
|
|
15
|
+
bundle
|
|
16
|
+
bundle exec jekyll
|
|
17
|
+
|
|
18
|
+
which will launch the site \(at http:\/\/localhost:4000\)
|
|
19
|
+
|
|
20
|
+
And presuming that works OK
|
|
21
|
+
|
|
22
|
+
git add .
|
|
23
|
+
git commit -m 'First commit'
|
|
24
|
+
|
|
25
|
+
You should also fill in your name in LICENSE.md
|
|
26
|
+
/).to_stdout
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: skellington
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.8.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- pikesley
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2016-09-
|
|
11
|
+
date: 2016-09-26 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: thor
|
|
@@ -52,6 +52,20 @@ dependencies:
|
|
|
52
52
|
- - "~>"
|
|
53
53
|
- !ruby/object:Gem::Version
|
|
54
54
|
version: '1.2'
|
|
55
|
+
- !ruby/object:Gem::Dependency
|
|
56
|
+
name: bootstrap
|
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
|
58
|
+
requirements:
|
|
59
|
+
- - "~>"
|
|
60
|
+
- !ruby/object:Gem::Version
|
|
61
|
+
version: 4.0.0.alpha4
|
|
62
|
+
type: :runtime
|
|
63
|
+
prerelease: false
|
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
+
requirements:
|
|
66
|
+
- - "~>"
|
|
67
|
+
- !ruby/object:Gem::Version
|
|
68
|
+
version: 4.0.0.alpha4
|
|
55
69
|
- !ruby/object:Gem::Dependency
|
|
56
70
|
name: coveralls
|
|
57
71
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -168,69 +182,90 @@ files:
|
|
|
168
182
|
- Rakefile
|
|
169
183
|
- bin/skellington
|
|
170
184
|
- config/config.yaml
|
|
185
|
+
- lib/jekyll/templates/.gitignore.eruby
|
|
186
|
+
- lib/jekyll/templates/.ruby-version.eruby
|
|
187
|
+
- lib/jekyll/templates/Gemfile.eruby
|
|
188
|
+
- lib/jekyll/templates/LICENSE.md.eruby
|
|
189
|
+
- lib/jekyll/templates/_config.yml.eruby
|
|
190
|
+
- lib/jekyll/templates/_layouts/default.html.eruby
|
|
191
|
+
- lib/jekyll/templates/_sass/bootstrap-custom.scss.eruby
|
|
192
|
+
- lib/jekyll/templates/_sass/fonts.scss.eruby
|
|
193
|
+
- lib/jekyll/templates/assets/application.scss.eruby
|
|
194
|
+
- lib/jekyll/templates/index.md.eruby
|
|
195
|
+
- lib/jekyll/templates/post-run.eruby
|
|
196
|
+
- lib/sinatra/templates/.gitignore.eruby
|
|
197
|
+
- lib/sinatra/templates/.rspec.eruby
|
|
198
|
+
- lib/sinatra/templates/.ruby-version.eruby
|
|
199
|
+
- lib/sinatra/templates/Gemfile.eruby
|
|
200
|
+
- lib/sinatra/templates/Guardfile.eruby
|
|
201
|
+
- lib/sinatra/templates/LICENSE.md.eruby
|
|
202
|
+
- lib/sinatra/templates/Procfile.eruby
|
|
203
|
+
- lib/sinatra/templates/Rakefile.eruby
|
|
204
|
+
- lib/sinatra/templates/config.rb.eruby
|
|
205
|
+
- lib/sinatra/templates/config.ru.eruby
|
|
206
|
+
- lib/sinatra/templates/config/config.yml.eruby
|
|
207
|
+
- lib/sinatra/templates/lib/app.rb.eruby
|
|
208
|
+
- lib/sinatra/templates/lib/app/helpers.rb.eruby
|
|
209
|
+
- lib/sinatra/templates/lib/app/racks.rb.eruby
|
|
210
|
+
- lib/sinatra/templates/post-run.eruby
|
|
211
|
+
- lib/sinatra/templates/public/assets/favicon.ico.eruby
|
|
212
|
+
- lib/sinatra/templates/public/css/styles.css.eruby
|
|
213
|
+
- lib/sinatra/templates/public/js/app.js.eruby
|
|
214
|
+
- lib/sinatra/templates/public/sass/_fonts.scss.eruby
|
|
215
|
+
- lib/sinatra/templates/public/sass/_footer.scss.eruby
|
|
216
|
+
- lib/sinatra/templates/public/sass/_github-corner.scss.eruby
|
|
217
|
+
- lib/sinatra/templates/public/sass/_variables.scss.eruby
|
|
218
|
+
- lib/sinatra/templates/public/sass/styles.scss.eruby
|
|
219
|
+
- lib/sinatra/templates/spec/app/app_spec.rb.eruby
|
|
220
|
+
- lib/sinatra/templates/spec/app/helpers_spec.rb.eruby
|
|
221
|
+
- lib/sinatra/templates/spec/javascripts/app_spec.js.eruby
|
|
222
|
+
- lib/sinatra/templates/spec/javascripts/support/jasmine.yml.eruby
|
|
223
|
+
- lib/sinatra/templates/spec/javascripts/support/jasmine_helper.rb.eruby
|
|
224
|
+
- lib/sinatra/templates/spec/spec_helper.rb.eruby
|
|
225
|
+
- lib/sinatra/templates/views/default.erb.eruby
|
|
226
|
+
- lib/sinatra/templates/views/includes/footer.erb.eruby
|
|
227
|
+
- lib/sinatra/templates/views/includes/github-corner.erb.eruby
|
|
228
|
+
- lib/sinatra/templates/views/includes/header.erb.eruby
|
|
229
|
+
- lib/sinatra/templates/views/index.erb.eruby
|
|
171
230
|
- lib/skellington.rb
|
|
172
231
|
- lib/skellington/cli.rb
|
|
173
232
|
- lib/skellington/generator.rb
|
|
174
233
|
- lib/skellington/helpers.rb
|
|
175
234
|
- lib/skellington/template.rb
|
|
176
235
|
- lib/skellington/version.rb
|
|
177
|
-
- lib/templates/.gitignore.eruby
|
|
178
|
-
- lib/templates/.rspec.eruby
|
|
179
|
-
- lib/templates/.ruby-version.eruby
|
|
180
|
-
- lib/templates/Gemfile.eruby
|
|
181
|
-
- lib/templates/Guardfile.eruby
|
|
182
|
-
- lib/templates/LICENSE.md.eruby
|
|
183
|
-
- lib/templates/Procfile.eruby
|
|
184
|
-
- lib/templates/Rakefile.eruby
|
|
185
|
-
- lib/templates/config.rb.eruby
|
|
186
|
-
- lib/templates/config.ru.eruby
|
|
187
|
-
- lib/templates/config/config.yml.eruby
|
|
188
|
-
- lib/templates/lib/app.rb.eruby
|
|
189
|
-
- lib/templates/lib/app/helpers.rb.eruby
|
|
190
|
-
- lib/templates/lib/app/racks.rb.eruby
|
|
191
|
-
- lib/templates/post-run.eruby
|
|
192
|
-
- lib/templates/public/assets/favicon.ico.eruby
|
|
193
|
-
- lib/templates/public/css/styles.css.eruby
|
|
194
|
-
- lib/templates/public/js/app.js.eruby
|
|
195
|
-
- lib/templates/public/sass/_fonts.scss.eruby
|
|
196
|
-
- lib/templates/public/sass/_footer.scss.eruby
|
|
197
|
-
- lib/templates/public/sass/_github-corner.scss.eruby
|
|
198
|
-
- lib/templates/public/sass/_variables.scss.eruby
|
|
199
|
-
- lib/templates/public/sass/styles.scss.eruby
|
|
200
|
-
- lib/templates/spec/app/app_spec.rb.eruby
|
|
201
|
-
- lib/templates/spec/app/helpers_spec.rb.eruby
|
|
202
|
-
- lib/templates/spec/javascripts/app_spec.js.eruby
|
|
203
|
-
- lib/templates/spec/javascripts/support/jasmine.yml.eruby
|
|
204
|
-
- lib/templates/spec/javascripts/support/jasmine_helper.rb.eruby
|
|
205
|
-
- lib/templates/spec/spec_helper.rb.eruby
|
|
206
|
-
- lib/templates/views/default.erb.eruby
|
|
207
|
-
- lib/templates/views/includes/footer.erb.eruby
|
|
208
|
-
- lib/templates/views/includes/github-corner.erb.eruby
|
|
209
|
-
- lib/templates/views/includes/header.erb.eruby
|
|
210
|
-
- lib/templates/views/index.erb.eruby
|
|
211
236
|
- skellington.gemspec
|
|
212
|
-
- spec/cli/app_spec.rb
|
|
213
|
-
- spec/cli/config_rb_spec.rb
|
|
214
|
-
- spec/cli/config_ru_spec.rb
|
|
215
|
-
- spec/cli/config_yml_spec.rb
|
|
216
|
-
- spec/cli/gemfile_spec.rb
|
|
217
|
-
- spec/cli/git_spec.rb
|
|
218
|
-
- spec/cli/guardfile_spec.rb
|
|
219
|
-
- spec/cli/helpers_spec.rb
|
|
220
|
-
- spec/cli/includes_spec.rb
|
|
221
|
-
- spec/cli/javascript_spec.rb
|
|
222
|
-
- spec/cli/layout_spec.rb
|
|
223
|
-
- spec/cli/license_spec.rb
|
|
224
|
-
- spec/cli/non_local_path_spec.rb
|
|
225
|
-
- spec/cli/procfile_spec.rb
|
|
226
|
-
- spec/cli/public_spec.rb
|
|
227
|
-
- spec/cli/racks_spec.rb
|
|
228
|
-
- spec/cli/rakefile_spec.rb
|
|
229
|
-
- spec/cli/rbenv_spec.rb
|
|
230
|
-
- spec/cli/spec_spec.rb
|
|
231
|
-
- spec/cli_spec.rb
|
|
232
237
|
- spec/hyphens_spec.rb
|
|
238
|
+
- spec/jekyll/cli/assets_css_spec.rb
|
|
239
|
+
- spec/jekyll/cli/bootstrap_spec.rb
|
|
240
|
+
- spec/jekyll/cli/config_yml_spec.rb
|
|
241
|
+
- spec/jekyll/cli/gemfile_spec.rb
|
|
242
|
+
- spec/jekyll/cli/git_spec.rb
|
|
243
|
+
- spec/jekyll/cli/index_md.rb
|
|
244
|
+
- spec/jekyll/cli/layout_spec.rb
|
|
245
|
+
- spec/jekyll/cli/license_spec.rb
|
|
246
|
+
- spec/jekyll/cli/rbenv_spec.rb
|
|
247
|
+
- spec/jekyll/cli_spec.rb
|
|
233
248
|
- spec/no-clobber_spec.rb
|
|
249
|
+
- spec/non_local_path_spec.rb
|
|
250
|
+
- spec/sinatra/cli/app_spec.rb
|
|
251
|
+
- spec/sinatra/cli/config_rb_spec.rb
|
|
252
|
+
- spec/sinatra/cli/config_ru_spec.rb
|
|
253
|
+
- spec/sinatra/cli/config_yml_spec.rb
|
|
254
|
+
- spec/sinatra/cli/gemfile_spec.rb
|
|
255
|
+
- spec/sinatra/cli/git_spec.rb
|
|
256
|
+
- spec/sinatra/cli/guardfile_spec.rb
|
|
257
|
+
- spec/sinatra/cli/helpers_spec.rb
|
|
258
|
+
- spec/sinatra/cli/includes_spec.rb
|
|
259
|
+
- spec/sinatra/cli/javascript_spec.rb
|
|
260
|
+
- spec/sinatra/cli/layout_spec.rb
|
|
261
|
+
- spec/sinatra/cli/license_spec.rb
|
|
262
|
+
- spec/sinatra/cli/procfile_spec.rb
|
|
263
|
+
- spec/sinatra/cli/public_spec.rb
|
|
264
|
+
- spec/sinatra/cli/racks_spec.rb
|
|
265
|
+
- spec/sinatra/cli/rakefile_spec.rb
|
|
266
|
+
- spec/sinatra/cli/rbenv_spec.rb
|
|
267
|
+
- spec/sinatra/cli/spec_spec.rb
|
|
268
|
+
- spec/sinatra/cli_spec.rb
|
|
234
269
|
- spec/skellington_spec.rb
|
|
235
270
|
- spec/spec_helper.rb
|
|
236
271
|
homepage: http://sam.pikesley.org/projects/skellington/
|
|
@@ -258,27 +293,37 @@ signing_key:
|
|
|
258
293
|
specification_version: 4
|
|
259
294
|
summary: Opinionated boilerplate skeleton generator for a Sinatra app
|
|
260
295
|
test_files:
|
|
261
|
-
- spec/cli/app_spec.rb
|
|
262
|
-
- spec/cli/config_rb_spec.rb
|
|
263
|
-
- spec/cli/config_ru_spec.rb
|
|
264
|
-
- spec/cli/config_yml_spec.rb
|
|
265
|
-
- spec/cli/gemfile_spec.rb
|
|
266
|
-
- spec/cli/git_spec.rb
|
|
267
|
-
- spec/cli/guardfile_spec.rb
|
|
268
|
-
- spec/cli/helpers_spec.rb
|
|
269
|
-
- spec/cli/includes_spec.rb
|
|
270
|
-
- spec/cli/javascript_spec.rb
|
|
271
|
-
- spec/cli/layout_spec.rb
|
|
272
|
-
- spec/cli/license_spec.rb
|
|
273
|
-
- spec/cli/non_local_path_spec.rb
|
|
274
|
-
- spec/cli/procfile_spec.rb
|
|
275
|
-
- spec/cli/public_spec.rb
|
|
276
|
-
- spec/cli/racks_spec.rb
|
|
277
|
-
- spec/cli/rakefile_spec.rb
|
|
278
|
-
- spec/cli/rbenv_spec.rb
|
|
279
|
-
- spec/cli/spec_spec.rb
|
|
280
|
-
- spec/cli_spec.rb
|
|
281
296
|
- spec/hyphens_spec.rb
|
|
297
|
+
- spec/jekyll/cli/assets_css_spec.rb
|
|
298
|
+
- spec/jekyll/cli/bootstrap_spec.rb
|
|
299
|
+
- spec/jekyll/cli/config_yml_spec.rb
|
|
300
|
+
- spec/jekyll/cli/gemfile_spec.rb
|
|
301
|
+
- spec/jekyll/cli/git_spec.rb
|
|
302
|
+
- spec/jekyll/cli/index_md.rb
|
|
303
|
+
- spec/jekyll/cli/layout_spec.rb
|
|
304
|
+
- spec/jekyll/cli/license_spec.rb
|
|
305
|
+
- spec/jekyll/cli/rbenv_spec.rb
|
|
306
|
+
- spec/jekyll/cli_spec.rb
|
|
282
307
|
- spec/no-clobber_spec.rb
|
|
308
|
+
- spec/non_local_path_spec.rb
|
|
309
|
+
- spec/sinatra/cli/app_spec.rb
|
|
310
|
+
- spec/sinatra/cli/config_rb_spec.rb
|
|
311
|
+
- spec/sinatra/cli/config_ru_spec.rb
|
|
312
|
+
- spec/sinatra/cli/config_yml_spec.rb
|
|
313
|
+
- spec/sinatra/cli/gemfile_spec.rb
|
|
314
|
+
- spec/sinatra/cli/git_spec.rb
|
|
315
|
+
- spec/sinatra/cli/guardfile_spec.rb
|
|
316
|
+
- spec/sinatra/cli/helpers_spec.rb
|
|
317
|
+
- spec/sinatra/cli/includes_spec.rb
|
|
318
|
+
- spec/sinatra/cli/javascript_spec.rb
|
|
319
|
+
- spec/sinatra/cli/layout_spec.rb
|
|
320
|
+
- spec/sinatra/cli/license_spec.rb
|
|
321
|
+
- spec/sinatra/cli/procfile_spec.rb
|
|
322
|
+
- spec/sinatra/cli/public_spec.rb
|
|
323
|
+
- spec/sinatra/cli/racks_spec.rb
|
|
324
|
+
- spec/sinatra/cli/rakefile_spec.rb
|
|
325
|
+
- spec/sinatra/cli/rbenv_spec.rb
|
|
326
|
+
- spec/sinatra/cli/spec_spec.rb
|
|
327
|
+
- spec/sinatra/cli_spec.rb
|
|
283
328
|
- spec/skellington_spec.rb
|
|
284
329
|
- spec/spec_helper.rb
|