Skip to content
This repository has been archived by the owner on Oct 13, 2021. It is now read-only.

Generator for raw web app with CircleCI, Jekyll, Webpack, Express + more.

License

Notifications You must be signed in to change notification settings

andrewscwei/generator-vars-jekyll

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

73 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

generator-vars-jekyll

Yeoman generator for a Jekyll-based web app.

Features

Requirements

  1. Node >=v5.0.0
  2. Ruby >=v2.3.0
  3. Bundler

Structure

.
+-- .babelrc
+-- .buildpacks
+-- .editorconfig
+-- .gitignore
+-- .jshintrc
+-- .taskconfig
+-- app
|   +-- .jshintrc
|   +-- _assets
|   |   +-- stylesheets
|   |   |   +-- base
|   |   |   |   +-- definitions.scss
|   |   |   |   +-- layout.scss
|   |   |   |   +-- typography.scss
|   |   |   +-- main.scss
|   |   +-- fonts
|   |   +-- images
|   |   +-- javascripts
|   |   |   +-- main.js
|   |   +-- vendor
|   |   +-- videos
|   +-- _data
|   +-- _drafts
|   +-- _includes
|   +-- _layouts
|   |   +-- compress.html
|   |   +-- default.html
|   +-- _posts
|   +-- 404.html
|   +-- 500.html
|   +-- index.html
|   +-- apple-touch-icon-180x180-precomposed.png
|   +-- apple-touch-icon-152x152-precomposed.png
|   +-- apple-touch-icon-144x144-precomposed.png
|   +-- apple-touch-icon-120x120-precomposed.png
|   +-- apple-touch-icon-114x114-precomposed.png
|   +-- apple-touch-icon-76x76-precomposed.png
|   +-- apple-touch-icon-72x72-precomposed.png
|   +-- apple-touch-icon-60x60-precomposed.png
|   +-- apple-touch-icon-57x57-precomposed.png
|   +-- apple-touch-icon-precomposed.png
|   +-- browserconfig.xml
|   +-- favicon.ico
|   +-- favicon.png
|   +-- large.png
|   +-- launcher-icon-0-75x.png
|   +-- launcher-icon-1-5x.png
|   +-- launcher-icon-1x.png
|   +-- launcher-icon-2x.png
|   +-- launcher-icon-3x.png
|   +-- launcher-icon-4x.png
|   +-- manifest.json
|   +-- og-image.png
|   +-- robots.txt
|   +-- square.png
|   +-- tiny.png
|   +-- wide.png
+-- node_modules
+-- public
+-- test
|   +-- .jshintrc
|   +-- index.js
+-- vendor
|   +-- bundle
+-- _config.yml
+-- _prose.yml
+-- circle.yml
+-- Gemfile
+-- gulpfile.babel.js
+-- package.json
+-- README.md
+-- server.js

Usage

Install yo and generator-vars-jekyll:

$ npm install -g yo generator-vars-jekyll

Create a new directory for your project and cd into it:

$ mkdir new-project-name && cd $_ 

Generate the project:

$ yo vars-jekyll [app-name]

For details on initial setup procedures of the project, see its generated README.md file.

Release Notes

3.0.0

  1. Removed optional libraries. The goal of this generator is just to provide a boilerplate without unnecessary dependencies.
  2. Replaced Browserify with Webpack.
  3. Build/asset pipeline is now mainly driven by NPM scripts (although the core is still Gulp).
  4. Updated Jekyll to v3 and Node to v5.
  5. Updated NPM packages and Gems.
  6. Added CircleCI default integration (with Heroku).
  7. Added compatibility with the HTML5 boilerplate favicon template.
  8. Added CDN support.
  9. Many other optimizations.

2.0.0

  1. Updated version numbers of NPM package dependencies.
  2. Gulp tasks are now compressed into fewer files. As a result require-dir dependency is no longer necessary and is removed from package.json.
  3. Task configurations are now stored in ./tasks/.taskconfig.
  4. Static files such as images, stylesheets, and JavaScripts are now stored in app/_assets (instead of app/assets). These files are no longer generated by the Jekyll generator and are now being deployed by the Gulp pipeline. This is for faster development iteration using gulp-watch. As a result, liquid templating static files is discouraged.
  5. favicon.png, Apple touch and Open Graph specific icons are now moved to app/_assets/images. favicon.ico remains in the root directory.
  6. gulp-imagemin is removed because it is the most taxing task in the Gulp pipeline. Images should be optimized outside of the Gulp pipeline instead.
  7. Ruby version from 2.0.0 to 2.2.1.
  8. Minor syntactic sugar changes.
  9. Lots of optimizations, particularly boosting the efficiency of automated rebuilds during development.