drink_up_doctor 0.3.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +13 -0
- data/.travis.yml +4 -0
- data/CODE_OF_CONDUCT.md +32 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +21 -0
- data/README.md +74 -0
- data/Rakefile +11 -0
- data/bin/console +14 -0
- data/bin/setup +7 -0
- data/bootstrap-boilerplate/.gitignore +8 -0
- data/bootstrap-boilerplate/404.html +25 -0
- data/bootstrap-boilerplate/README.md.tt +88 -0
- data/bootstrap-boilerplate/_includes/footer.html +18 -0
- data/bootstrap-boilerplate/_includes/google_analytics.html +10 -0
- data/bootstrap-boilerplate/_includes/head.html +11 -0
- data/bootstrap-boilerplate/_includes/header.html +27 -0
- data/bootstrap-boilerplate/_includes/index_item.html +5 -0
- data/bootstrap-boilerplate/_includes/page_js.html +4 -0
- data/bootstrap-boilerplate/_layouts/category_index.html +12 -0
- data/bootstrap-boilerplate/_layouts/default.html +22 -0
- data/bootstrap-boilerplate/_layouts/page.html +13 -0
- data/bootstrap-boilerplate/_layouts/post.html +13 -0
- data/bootstrap-boilerplate/_layouts/tag_index.html +14 -0
- data/bootstrap-boilerplate/_plugins/category_index.rb +42 -0
- data/bootstrap-boilerplate/_plugins/slug_sort.rb +13 -0
- data/bootstrap-boilerplate/_plugins/tag_index.rb +41 -0
- data/bootstrap-boilerplate/_posts/2015-10-18-post-four.md +17 -0
- data/bootstrap-boilerplate/_posts/2015-10-18-post-one.md +12 -0
- data/bootstrap-boilerplate/_posts/2015-10-18-post-three.md +20 -0
- data/bootstrap-boilerplate/_posts/2015-10-18-post-two.md +16 -0
- data/bootstrap-boilerplate/_posts/2015-10-18-welcome.md +8 -0
- data/bootstrap-boilerplate/_sass/_bootstrap-compass.scss +9 -0
- data/bootstrap-boilerplate/_sass/_bootstrap-mincer.scss +19 -0
- data/bootstrap-boilerplate/_sass/_bootstrap-sprockets.scss +9 -0
- data/bootstrap-boilerplate/_sass/_bootstrap.scss +56 -0
- data/bootstrap-boilerplate/_sass/_my_variables.scss +874 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_alerts.scss +73 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_badges.scss +68 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_breadcrumbs.scss +26 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_button-groups.scss +244 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_buttons.scss +168 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_carousel.scss +269 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_close.scss +36 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_code.scss +69 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_component-animations.scss +37 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_dropdowns.scss +216 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_forms.scss +611 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_glyphicons.scss +307 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_grid.scss +84 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_input-groups.scss +167 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_jumbotron.scss +52 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_labels.scss +66 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_list-group.scss +130 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_media.scss +66 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_mixins.scss +40 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_modals.scss +150 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_navbar.scss +662 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_navs.scss +242 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_normalize.scss +424 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_pager.scss +54 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_pagination.scss +89 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_panels.scss +271 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_popovers.scss +131 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_print.scss +101 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_progress-bars.scss +87 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_responsive-embed.scss +35 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_responsive-utilities.scss +179 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_scaffolding.scss +161 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_tables.scss +234 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_theme.scss +291 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_thumbnails.scss +38 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_tooltip.scss +101 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_type.scss +298 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_utilities.scss +55 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_variables.scss +872 -0
- data/bootstrap-boilerplate/_sass/bootstrap/_wells.scss +29 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_alerts.scss +14 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_background-variant.scss +12 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_border-radius.scss +18 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_buttons.scss +68 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_center-block.scss +7 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_clearfix.scss +22 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_forms.scss +88 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_gradients.scss +58 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_grid-framework.scss +81 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_grid.scss +122 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_hide-text.scss +21 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_image.scss +33 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_labels.scss +12 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_list-group.scss +32 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_nav-divider.scss +10 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_nav-vertical-align.scss +9 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_opacity.scss +8 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_pagination.scss +24 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_panels.scss +24 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_progress-bar.scss +10 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_reset-filter.scss +8 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_reset-text.scss +18 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_resize.scss +6 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_responsive-visibility.scss +21 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_size.scss +10 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_tab-focus.scss +9 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_table-row.scss +28 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_text-emphasis.scss +12 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_text-overflow.scss +8 -0
- data/bootstrap-boilerplate/_sass/bootstrap/mixins/_vendor-prefixes.scss +222 -0
- data/bootstrap-boilerplate/_sass/main.scss +20 -0
- data/bootstrap-boilerplate/about/index.md +24 -0
- data/bootstrap-boilerplate/apple-touch-icon.png +0 -0
- data/bootstrap-boilerplate/browserconfig.xml +12 -0
- data/bootstrap-boilerplate/crossdomain.xml +14 -0
- data/bootstrap-boilerplate/favicon.ico +0 -0
- data/bootstrap-boilerplate/fonts/glyphicons-halflings-regular.eot +0 -0
- data/bootstrap-boilerplate/fonts/glyphicons-halflings-regular.svg +229 -0
- data/bootstrap-boilerplate/fonts/glyphicons-halflings-regular.ttf +0 -0
- data/bootstrap-boilerplate/fonts/glyphicons-halflings-regular.woff +0 -0
- data/bootstrap-boilerplate/humans.txt.tt +18 -0
- data/bootstrap-boilerplate/index.html +18 -0
- data/bootstrap-boilerplate/js/main.js +1 -0
- data/bootstrap-boilerplate/js/vendor/bootstrap/affix.js +162 -0
- data/bootstrap-boilerplate/js/vendor/bootstrap/alert.js +94 -0
- data/bootstrap-boilerplate/js/vendor/bootstrap/button.js +120 -0
- data/bootstrap-boilerplate/js/vendor/bootstrap/carousel.js +237 -0
- data/bootstrap-boilerplate/js/vendor/bootstrap/collapse.js +211 -0
- data/bootstrap-boilerplate/js/vendor/bootstrap/dropdown.js +165 -0
- data/bootstrap-boilerplate/js/vendor/bootstrap/modal.js +337 -0
- data/bootstrap-boilerplate/js/vendor/bootstrap/popover.js +108 -0
- data/bootstrap-boilerplate/js/vendor/bootstrap/scrollspy.js +172 -0
- data/bootstrap-boilerplate/js/vendor/bootstrap/tab.js +155 -0
- data/bootstrap-boilerplate/js/vendor/bootstrap/tooltip.js +514 -0
- data/bootstrap-boilerplate/js/vendor/bootstrap/transition.js +59 -0
- data/bootstrap-boilerplate/js/vendor/bootstrap-sprockets.js +12 -0
- data/bootstrap-boilerplate/js/vendor/bootstrap.js +2363 -0
- data/bootstrap-boilerplate/js/vendor/bootstrap.min.js +7 -0
- data/bootstrap-boilerplate/js/vendor/jquery-1.11.2.js +10346 -0
- data/bootstrap-boilerplate/js/vendor/jquery-1.11.2.min.js +4 -0
- data/bootstrap-boilerplate/js/vendor/modernizr-2.8.3-respond-1.4.2.min.js +11 -0
- data/bootstrap-boilerplate/js/vendor/npm.js +13 -0
- data/bootstrap-boilerplate/robots.txt +5 -0
- data/bootstrap-boilerplate/tile-wide.png +0 -0
- data/bootstrap-boilerplate/tile.png +0 -0
- data/drink_up_doctor.gemspec +29 -0
- data/exe/drink_up_doctor +4 -0
- data/lib/drink_up_doctor/new_site.rb +178 -0
- data/lib/drink_up_doctor/new_twbs_site.rb +124 -0
- data/lib/drink_up_doctor/version.rb +3 -0
- data/lib/drink_up_doctor.rb +12 -0
- data/templates/Gemfile +11 -0
- data/templates/README.md.erb +81 -0
- data/templates/bower.json.erb +17 -0
- data/templates/gulpfile.js.erb +84 -0
- data/templates/main.scss +46 -0
- data/templates/package.json.erb +20 -0
- data/templates/setup.sh +2 -0
- data/templates/site_gitignore +7 -0
- metadata +285 -0
@@ -0,0 +1,124 @@
|
|
1
|
+
require "thor"
|
2
|
+
require "yaml"
|
3
|
+
|
4
|
+
module DrinkUpDoctor
|
5
|
+
class NewTwbsSite < Thor::Group
|
6
|
+
include Thor::Actions
|
7
|
+
|
8
|
+
def app_name
|
9
|
+
@app_name || File.basename($0)
|
10
|
+
end
|
11
|
+
|
12
|
+
argument :name
|
13
|
+
class_option :title, default: "My awesome site", desc: "Title of your jekyll site", type: :string, aliases: '-t'
|
14
|
+
class_option :author, default: "Me", desc: "Author of the site", type: :string, aliases: '-a'
|
15
|
+
class_option :email, default: "me@example.com", desc: "Author's Email", type: :string, aliases: '-e'
|
16
|
+
class_option :description, default: "My awesome site", type: :string, aliases: '-d'
|
17
|
+
class_option :url, default: "http://example.com", desc: "Home Page for the Site", type: :string, aliases: '-u'
|
18
|
+
class_option :twitter_username, default: "me", desc: "Twitter User", type: :string, aliases: '-T'
|
19
|
+
class_option :github_username, default: "me", desc: "Github User", type: :string, aliases: '-G'
|
20
|
+
class_option :baseurl, default: "", desc: "Base url of the site, e.g. '/blog' that is the root of the site", type: :string
|
21
|
+
|
22
|
+
def self.source_root
|
23
|
+
File.expand_path("../../../", __FILE__)
|
24
|
+
end
|
25
|
+
|
26
|
+
def create_project_directory
|
27
|
+
empty_directory name
|
28
|
+
end
|
29
|
+
|
30
|
+
def create_config
|
31
|
+
config_file = "#{name}/_config.yml"
|
32
|
+
config = {"name" => name}
|
33
|
+
config.merge! options
|
34
|
+
config.merge!({
|
35
|
+
"social" => {
|
36
|
+
"twitter" => options["twitter_username"],
|
37
|
+
"github" => options["github_username"]
|
38
|
+
},
|
39
|
+
"baseurl" => "",
|
40
|
+
"markdown" => "kramdown",
|
41
|
+
"kramdown" => {
|
42
|
+
"input" => "GFM",
|
43
|
+
"hard_wrap" => false
|
44
|
+
},
|
45
|
+
"defaults" => {
|
46
|
+
"author" => options["author"]
|
47
|
+
},
|
48
|
+
"exclude" => %w[README.md bower.json package.json gulpfile.js node_modules bower_components Gemfile Gemfile.lock]
|
49
|
+
})
|
50
|
+
create_file config_file, config.to_yaml
|
51
|
+
prepend_to_file config_file, "# Generated by #{app_name}\n"
|
52
|
+
end
|
53
|
+
|
54
|
+
def create_baseurl_config
|
55
|
+
config_file = "#{name}/_baseurl.yml"
|
56
|
+
config = {
|
57
|
+
"baseurl" => options["baseurl"]
|
58
|
+
}
|
59
|
+
create_file config_file, config.to_yaml
|
60
|
+
prepend_to_file config_file, "# Generated by #{app_name}"
|
61
|
+
end
|
62
|
+
|
63
|
+
def create_bower_file
|
64
|
+
template "templates/bower.json.erb", "#{name}/bower.json"
|
65
|
+
end
|
66
|
+
|
67
|
+
def create_package_file
|
68
|
+
template "templates/package.json.erb", "#{name}/package.json"
|
69
|
+
end
|
70
|
+
|
71
|
+
def copy_gulp_file
|
72
|
+
template "templates/gulpfile.js.erb", "#{name}/gulpfile.js"
|
73
|
+
end
|
74
|
+
|
75
|
+
def copy_gemfile
|
76
|
+
copy_file "templates/Gemfile", "#{name}/Gemfile"
|
77
|
+
end
|
78
|
+
|
79
|
+
def create_setup
|
80
|
+
copy_file "templates/setup.sh", "#{name}/.setup.sh"
|
81
|
+
chmod "#{name}/.setup.sh", 0755
|
82
|
+
end
|
83
|
+
|
84
|
+
def copy_bootstrap_boilerplate
|
85
|
+
directory "bootstrap-boilerplate", name
|
86
|
+
end
|
87
|
+
|
88
|
+
def print_instructions
|
89
|
+
puts <<-instructions
|
90
|
+
|
91
|
+
********************************************************************************
|
92
|
+
|
93
|
+
Completing the Installation
|
94
|
+
---------------------------
|
95
|
+
|
96
|
+
Change into the new site directory and run the setup script:
|
97
|
+
|
98
|
+
|
99
|
+
$ cd "./#{name}"
|
100
|
+
$ ./.setup.sh
|
101
|
+
|
102
|
+
This will install the npm modules, bower components, and ruby gems
|
103
|
+
needed to work with your new site.
|
104
|
+
|
105
|
+
After the setup is complete, you can start up the gulp server and
|
106
|
+
start blogging:
|
107
|
+
|
108
|
+
$ gulp
|
109
|
+
|
110
|
+
When you are ready to publish, shut down the gulp server with Ctrl-C
|
111
|
+
and run the distribution build:
|
112
|
+
|
113
|
+
$ gulp dist
|
114
|
+
|
115
|
+
The distribution will be in "./#{name}/_dist/" and you can push that
|
116
|
+
to where your site is located. (Github pages, AWS S3, your own server,
|
117
|
+
or whatever you choose to use.)
|
118
|
+
|
119
|
+
********************************************************************************
|
120
|
+
|
121
|
+
instructions
|
122
|
+
end
|
123
|
+
end
|
124
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require "thor"
|
2
|
+
|
3
|
+
require "drink_up_doctor/version"
|
4
|
+
require "drink_up_doctor/new_site"
|
5
|
+
require "drink_up_doctor/new_twbs_site"
|
6
|
+
|
7
|
+
module DrinkUpDoctor
|
8
|
+
class Base < Thor
|
9
|
+
register(DrinkUpDoctor::NewSite, 'new', 'new', 'create a new Jekyll web site')
|
10
|
+
register(DrinkUpDoctor::NewTwbsSite, 'newtwbs', 'newtwbs', 'create a new Jekyll web site based on HTML5Boilerplate and Twitter Bootstrap')
|
11
|
+
end
|
12
|
+
end
|
data/templates/Gemfile
ADDED
@@ -0,0 +1,81 @@
|
|
1
|
+
# <%= name %>
|
2
|
+
|
3
|
+
New Jekyll site with Gulp generated by [<%= app_name %>](https://github.com/tamouse/drink_up_doctor).
|
4
|
+
|
5
|
+
## Completing the Installation
|
6
|
+
|
7
|
+
After creating the new site, run the following command:
|
8
|
+
|
9
|
+
``` bash
|
10
|
+
./.setup.sh
|
11
|
+
```
|
12
|
+
|
13
|
+
## Differences from standard `jekyll new`
|
14
|
+
|
15
|
+
There is no `css/` folder; all CSS work should be done with SASS/SCSS
|
16
|
+
in the `_sass/` folder, which is watched by the Gulp 'css' task and
|
17
|
+
compiled in the `assets/css/` folder.
|
18
|
+
|
19
|
+
There is a `main.scss` that is essentially the same as the standard
|
20
|
+
Jekyll file of the same name, but it has a few extra items described
|
21
|
+
below.
|
22
|
+
|
23
|
+
The path for the site style sheet is changed in `_includes/head.html`
|
24
|
+
file from `/css/main.css` to `/assets/css/main.css`.
|
25
|
+
|
26
|
+
### Normalize
|
27
|
+
|
28
|
+
The `normalize.scss` package has been added to the components and
|
29
|
+
imported by `main.scss`.
|
30
|
+
|
31
|
+
### FontAwesome
|
32
|
+
|
33
|
+
The `font-awesome.scss` package has been added to the components and
|
34
|
+
imported by `main.scss`. This lets you use `<i class="fa
|
35
|
+
fa-github"></i>` and the like. The `svg` entries in the various
|
36
|
+
standard Jekyll files `header.html` and `footer.html` have been
|
37
|
+
replaced with these icons.
|
38
|
+
|
39
|
+
### baseurl
|
40
|
+
|
41
|
+
The `baseurl` is not set in the standard `_config.yml`; instead it is
|
42
|
+
in it's own configuration file `_baseurl.yml`. Jekyll's `build`
|
43
|
+
command lets you have multiple configuration files given with the
|
44
|
+
`--config` option.
|
45
|
+
|
46
|
+
## Working on the Site
|
47
|
+
|
48
|
+
After the installation is complete, you can work on the site any time
|
49
|
+
with the command:
|
50
|
+
|
51
|
+
``` bash
|
52
|
+
gulp serve
|
53
|
+
```
|
54
|
+
|
55
|
+
This will build the site, watch the appropriate folders for changes,
|
56
|
+
and display the built site in a browser. As you make changes to the
|
57
|
+
site files, add posts, pages, etc, the site will automatically be
|
58
|
+
updated and redisplayed in the browser.
|
59
|
+
|
60
|
+
You should keep track of the gulp process, though, in case there is a
|
61
|
+
error during the Compass or Jekyll passes that cause the gulp process
|
62
|
+
to terminate. Fix them and restart gulp as above.
|
63
|
+
|
64
|
+
You can see all the tasks for gulp with the `help` command:
|
65
|
+
|
66
|
+
``` bash
|
67
|
+
gulp help
|
68
|
+
```
|
69
|
+
|
70
|
+
|
71
|
+
## Distributing the Site
|
72
|
+
|
73
|
+
Building your site for distribution, i.e., utilizing the baseurl, is
|
74
|
+
performed by the command:
|
75
|
+
|
76
|
+
``` bash
|
77
|
+
gulp dist
|
78
|
+
```
|
79
|
+
|
80
|
+
This will put the distribution into the `_dist/` folder in the root of
|
81
|
+
the site.
|
@@ -0,0 +1,17 @@
|
|
1
|
+
{
|
2
|
+
"name" : "<%= name %>",
|
3
|
+
"version": "0.0.0",
|
4
|
+
"authors": ["<%= options["author"] %>"],
|
5
|
+
"homepage": "<%= options["url"] %>",
|
6
|
+
"ignore": [
|
7
|
+
"**/.*",
|
8
|
+
"node_modules",
|
9
|
+
"bower_components",
|
10
|
+
"test",
|
11
|
+
"tests"
|
12
|
+
],
|
13
|
+
"dependencies": {
|
14
|
+
"fontawesome": "~4.3.0",
|
15
|
+
"normalize.scss": "~3.0.2"
|
16
|
+
}
|
17
|
+
}
|
@@ -0,0 +1,84 @@
|
|
1
|
+
var gulp = require('gulp');
|
2
|
+
var help = require('gulp-task-listing');
|
3
|
+
var cp = require('child_process');
|
4
|
+
var minifyCss = require('gulp-minify-css');
|
5
|
+
var notify = require("gulp-notify")
|
6
|
+
var sass = require('gulp-ruby-sass')
;
|
7
|
+
var bower = require('gulp-bower');
|
8
|
+
var replace = require('gulp-replace');
|
9
|
+
var browserSync = require('browser-sync');
|
10
|
+
|
11
|
+
var config = {
|
12
|
+
sassPath: "./_sass",
|
13
|
+
bowerDir: "./bower_components",
|
14
|
+
assetDir: "./assets",
|
15
|
+
outputDir: "./_site",
|
16
|
+
distDir: "./_dist"
|
17
|
+
}
|
18
|
+
|
19
|
+
var messages = {
|
20
|
+
jekyllBuild: '<span style="color: grey">Running:</span> $ jekyll build'
|
21
|
+
};
|
22
|
+
|
23
|
+
gulp.task('help', help);
|
24
|
+
|
25
|
+
gulp.task('bower', function() {
|
26
|
+
return bower()
|
27
|
+
.pipe(gulp.dest(config.bowerDir))
|
28
|
+
});
|
29
|
+
|
30
|
+
gulp.task('jekyll-build', ['css','icons','bower'], function (done) {
|
31
|
+
browserSync.notify(messages.jekyllBuild);
|
32
|
+
return cp.spawn('bundle', ['exec', 'jekyll', 'build', '--incremental'], {stdio: 'inherit'})
|
33
|
+
.on('close', done);
|
34
|
+
});
|
35
|
+
|
36
|
+
gulp.task('jekyll-rebuild', ['jekyll-build'], function () {
|
37
|
+
browserSync.reload();
|
38
|
+
});
|
39
|
+
|
40
|
+
gulp.task('icons', function() {
|
41
|
+
return gulp.src(
|
42
|
+
config.bowerDir + "/fontawesome/fonts/**.*")
|
43
|
+
.pipe(gulp.dest(config.assetDir + "/fonts"))
|
44
|
+
.pipe(gulp.dest(config.outputDir + "/assets/fonts"));
|
45
|
+
});
|
46
|
+
|
47
|
+
gulp.task('css', function() {
|
48
|
+
return sass(config.sassPath + "/main.scss", {
|
49
|
+
style: "compressed",
|
50
|
+
loadPath: [
|
51
|
+
config.sassPath,
|
52
|
+
config.bowerDir + "/normalize.scss/",
|
53
|
+
config.bowerDir + "/fontawesome/scss"
|
54
|
+
],
|
55
|
+
compass: true
|
56
|
+
})
|
57
|
+
.pipe(minifyCss())
|
58
|
+
.pipe(gulp.dest(config.assetDir + "/css"))
|
59
|
+
.pipe(gulp.dest(config.outputDir + "/assets/css"))
|
60
|
+
.pipe(browserSync.stream());
|
61
|
+
|
62
|
+
});
|
63
|
+
|
64
|
+
gulp.task('build', ['bower', 'icons', 'css' ,'jekyll-build']);
|
65
|
+
|
66
|
+
gulp.task('serve', ['build'], function() {
|
67
|
+
browserSync.init({
|
68
|
+
server: {
|
69
|
+
baseDir: "./_site"
|
70
|
+
}
|
71
|
+
});
|
72
|
+
|
73
|
+
// Start a watch for rebuilds
|
74
|
+
gulp.watch(['_sass/*.scss'], ['css'])
|
75
|
+
gulp.watch(['_config.yml', '*.html', '*.md', '*.xml', 'pages/**/*.*', '_layouts/*.html', '_includes/*', '_posts/*'], ['jekyll-rebuild']);
|
76
|
+
});
|
77
|
+
|
78
|
+
gulp.task('jekyll-build-dist', ['css','icons','bower'], function () {
|
79
|
+
return cp.spawn('bundle', ['exec', 'jekyll', 'build', '--config', '_config.yml,_baseurl.yml', '--destination', config.distDir], {stdio: 'inherit'});
|
80
|
+
});
|
81
|
+
|
82
|
+
gulp.task('dist', ['bower', 'icons', 'css', 'jekyll-build-dist']);
|
83
|
+
|
84
|
+
gulp.task('default', ['serve']);
|
data/templates/main.scss
ADDED
@@ -0,0 +1,46 @@
|
|
1
|
+
@charset "utf-8";
|
2
|
+
|
3
|
+
// Our variables
|
4
|
+
$base-font-family: Helvetica, Arial, sans-serif;
|
5
|
+
$base-font-size: 16px;
|
6
|
+
$small-font-size: $base-font-size * 0.875;
|
7
|
+
$base-line-height: $base-font-size * 1.25;
|
8
|
+
|
9
|
+
$spacing-unit: 30px;
|
10
|
+
|
11
|
+
$text-color: #111;
|
12
|
+
$background-color: #fdfdfd;
|
13
|
+
$brand-color: #2a7ae2;
|
14
|
+
|
15
|
+
$grey-color: #828282;
|
16
|
+
$grey-color-light: lighten($grey-color, 40%);
|
17
|
+
$grey-color-dark: darken($grey-color, 25%);
|
18
|
+
|
19
|
+
// Width of the content area
|
20
|
+
$content-width: 800px;
|
21
|
+
|
22
|
+
$on-palm: 600px;
|
23
|
+
$on-laptop: 800px;
|
24
|
+
|
25
|
+
// Using media queries like this:
|
26
|
+
// @include media-query($on-palm) {
|
27
|
+
// .wrapper {
|
28
|
+
// padding-right: $spacing-unit / 2;
|
29
|
+
// padding-left: $spacing-unit / 2;
|
30
|
+
// }
|
31
|
+
// }
|
32
|
+
@mixin media-query($device) {
|
33
|
+
@media screen and (max-width: $device) {
|
34
|
+
@content;
|
35
|
+
}
|
36
|
+
}
|
37
|
+
|
38
|
+
// Import bower_components
|
39
|
+
@import "normalize", "font-awesome";
|
40
|
+
|
41
|
+
// Import partials from `sass_dir` (defaults to `_sass`)
|
42
|
+
@import
|
43
|
+
"base",
|
44
|
+
"layout",
|
45
|
+
"syntax-highlighting"
|
46
|
+
;
|
@@ -0,0 +1,20 @@
|
|
1
|
+
{
|
2
|
+
"name": "<%= name %>",
|
3
|
+
"version": "0.0.0",
|
4
|
+
"description": "<%= options["description"] %>",
|
5
|
+
"main": "gulpfile.js",
|
6
|
+
"author": "<%= options["author"] %>",
|
7
|
+
"license": "MIT",
|
8
|
+
"repository": "tamouse/drink_up_doctor",
|
9
|
+
"devDependencies": {
|
10
|
+
"browser-sync": "^2.7.12",
|
11
|
+
"gulp": "^3.9.0",
|
12
|
+
"gulp-bower": "0.0.10",
|
13
|
+
"gulp-compass": "^2.1.0",
|
14
|
+
"gulp-minify-css": "^1.2.0",
|
15
|
+
"gulp-notify": "^2.2.0",
|
16
|
+
"gulp-replace": "^0.5.4",
|
17
|
+
"gulp-ruby-sass": "^1.0.5",
|
18
|
+
"gulp-task-listing": "^1.0.1"
|
19
|
+
}
|
20
|
+
}
|
data/templates/setup.sh
ADDED