generator-zf5
Yeoman generator for Zurb Foundation 5.
Yo Foundation 5!
- Sass compiling
- Publishing to dist directory
- Server with LiveReload (0.0.0.0:9000)
- Bower install
- JSHint
- Font Awesome (option)
Getting Started
$ npm install -g yo
To install generator-zf5 from npm, run:
$ npm install -g generator-zf5
Finally, initiate the generator:
$ yo zf5
Grunt tasks:
..for validating javascript
$ grunt validate-js
..for injecting bower libraries (also in default grunt task)
$ grunt bower-install
..for compiling Sass files
$ grunt compile-sass
..for watching (Sass, Server on 0.0.0.0:9000 with LiveReload)
$ grunt
..for publishing project (dist directory)
$ grunt publish
..for dist directory preview (server on 0.0.0.0:9001)
$ grunt server-dist
LiveReload
For LiveReload call 'grunt' (watching) command and go to http://0.0.0.0:9000
Usemin
Read more about grunt-usemin
Bower-install
Now you can install your libraries much faster. Example:
bower search magnific-popup
...
bower install magnific-popup --save
...
grunt bower-install
This should inject the proper js and css paths into your html files. But you should be careful and check what was injected.
'grunt publish' will then minify and concatenate them into a clean (libraries.min.css and libraries.min.js) files.
Instead of a 'bower install' with '--save' you can manualy edit the bower.json file and then run a 'grunt bower-install'. It is also included in the default task - 'grunt'.
Tips
- if you want you can delete unnecessary/unused Foundation components from main app.scss (it will be lightest main Foundation css file)
- place all your html files in the root folder (app) or you have to change assets paths (build etc.)
- try to avoid situation when you have the same build blocks in two html files with different assets so (examples):
<!-- build:js js/mfpopup/mfpopup.min.js -->
<script src="js/mfpopup/mfpopup.js"></script>
<!-- endbuild -->
and
<!-- build:css css/mfpopup/mfpopup.min.js -->
<script src="js/mfpopup/mfpopup.js"></script>
<script src="js/mfpopup/other_script.js"></script>
<!-- endbuild -->
you can add new ones
- always verify what 'grunt bower-install' injects
You can test it and tell me please if something is not working.
Getting To Know Yeoman
Yeoman has a heart of gold. He's a person with feelings and opinions, but he's very easy to work with. If you think he's too opinionated, he can be easily convinced.
If you'd like to get to know Yeoman better and meet some of his friends, Grunt and Bower, check out the complete Getting Started Guide.
License
MIT License
Maybe someone (English speaker) would like to prepare tutorial for zf5 generator? I will be very thankful :)
Contact
@juliancwirko | julian.cwirko@gmail.com
Changelog
0.6.1 (14.03.2014)
- Foundation 5.2.1 adjustments
0.6.0 (8.03.2014)