generator-robonkey v0.3.13
A Yeoman generator for Gulp, Templating, CSS Preprocessors, CoffeeScript, PostCSS, Modernizr, Icon Font Generator, BrowserSync, and some libraries to choose from. Express, Wordpress, Drupal, CodeIgniter and Laravel subgenerators are available.
This generator is a work in progress. There probably will be some bugs and missing features. Likewise, this documentation isn't finished yet either.
Getting Started
Install yo
$ npm install -g yoInstall Robonkey
$ npm install -g generator-robonkeyThen you can start building your app with Robonkey:
$ mkdir yourapp
$ cd yourapp
$ yo robonkeyGulp
This generator uses Gulp (CoffeeScript Gulp is optional). You have the option to install Gulp at root level, or a subfolder.
Root stucture
.yo-rc.json
bower.json
package.json
gulpfile.js
- gulp-tasks
- node_modules
- src
- bower_components
- preprocessors
- js
- …
- app
- index.htmlClean stucture
.yo-rc.json
-gulp
bower.json
package.json
gulpfile.js
- gulp-tasks
- node_modules
- src
- bower_components
- preprocessors
- js
- …
- app
- index.htmlGenerators
Main generator
The main generator calls the static subgenerator
$ yo robonkeyrobonkey:static generator
The static generator installs a static website project
Choices include
- Templating (Jade/Pug, Nunjucks)
The static generator calls the styles-, js- and icons subgenerators
$ yo robonkey:staticrobonkey:styles generator
Choices include
- Preprocessing (Scss, Stylus, Less)
- Postprocessing (postcss)
$ yo robonkey:stylesrobonkey:js generator
Choices include
- Optional CoffeeScript
- A handfull of js libraries to choose from
$ yo robonkey:jsrobonkey:icons
Choices include
- SVG Spritesheet - Spritesheet Name
- Icon font - Preprocessors - Font Name
$ yo robonkey:iconsrobonkey:framework generators
Installs a framework. $ yo robonkey should be run aftwerwards.
$ yo robonkey:express
$ yo robonkey:wordpress
$ yo robonkey:drupal
$ yo robonkey:codeigniter
$ yo robonkey:laravelModernizr
Modernizr gulp plugin is used for the creation of custom Modernizr tests.
When initialized, the plugin will crawl your .scss and .js files for Modernizr references (ie: .no-svg) and builds the modernizr-custom.js file.
Modernizr website Gulp Modernizr
Settings
In config.json you can set the modernizr options.
"modernizr": {
"excludeTests": [],
"tests": [],
"output": "modernizr-custom.js",
"options": [ "setClasses", "addTest", "html5printshiv", "testProp", "fnBind" ]
}More info on the settings is available on the gulp-modernizr page.
Build
To build a custom modernizr file, just run:
$ gulp modernizrThe build task will also create a custom modernizr file, next to a custom icon font and minified styles and script.
$ gulp buildOutput
The output file will be:
website/assets/js/libs/modernizr-custom.jsSVG spritesheet
Uses gulp-svgstore Combine svg files into one with elements. Read more about this in CSS Tricks article.
Settings
More on configuring on the gulp-svgstore page
Build
Drop your svg files in:
src/icons/<spritesheet name>/Run
$ gulp svgThe build task will also run the svg task
$ gulp buildOutput
The output file will be:
website/assets/img/svgCustom Icon Font
The custom icon font generator uses svg images from a folder to build the font. Then it generates a .scss file with @font-face declaration, .icn and .icn--name classes.
Gulp Iconfont Gulp Iconfont css
Settings
The fontname is set in the options when you use Robonkey. (Default: robonkey-glyphs)
In config.json you can set the icon font options.
"iconFont": {
"name": "fontname",
"types": ["ttf", "eot", "woff", "woff2", "svg"]
}More info on the settings is available on the gulp-icon page.
Build
Prepare:
An Illustrator file is provided with examples. (src/iconfont/illustrator/icn.ai)
Things to consider when preparing svg for icon fonts:
- Minimum size 500px * 500px
- Each stroke must be converted to fills
- Fills must be combined creating compound paths if necessary (no overlapping shapes)
- Any color will be ignored: glyphs will always be interpreted as black. You also can’t use white for backgrounds: you can have only transparent ones
- Any embedded image in your SVG will be ignored
- The svg filename will be used as class name for the icon (.icn--svg-file-name)
Location:
Drop your svg files (minimum 500px * 500px) in:
src/iconfont/svg/Run:
$ gulp iconfontOutput Files
The font will be placed in:
website/assets/fonts/<your font name>The scss/styl/less files will be placed in:
SCSS
src/scss/base/fonts/_font-icn.scss
src/scss/modules/_icons.scssStylus
src/scss/base/fonts/font-styl
src/stylus/modules/icons.stylLess
src/scss/base/fonts/font-icn.less
src/less/modules/icons.lessTo Do
- Priority:
- Testing
- Update docs
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago