Please see the gulpfile for up-to-date information on what we support.
- Bootstrap, Sass, and HTML5 Boilerplate (jQuery, Normalize.css, etc.)
- UnCSS (customized for use with Bootstrap)
- JS, CSS, and HTML Minification
- CSS Autoprefixing
- Built-in preview server with BrowserSync
- Compile Sass with libsass
- Lint your scripts
- Lint Bootstrap HTML with gulp-bootlint
- Source maps
- Image optimization
- Git initialization
- Choose between Google Tag Manager and Google Analytics
- Use yargs to customize the target directory of Gulp tasks
- Wire-up dependencies installed with Bower
- The gulpfile makes use of ES2015 features by using Babel
- Many other customizations...
For more information on what this generator can do for you, take a look at the gulp plugins used in our
Keep in mind that libsass is feature-wise not fully compatible with Ruby Sass. Check out this curated list of incompatibilities to find out which features are missing.
If your favorite feature is missing and you really need Ruby Sass, you can always switch to gulp-ruby-sass and update the
styles task in gulpfile accordingly.
- Install Node
- Install other dependencies:
npm install --global yo gulp-cli bower
- Install the generator:
npm install --global generator-ninthlink
yo ninthlinkto scaffold your web app
gulp serveto preview and watch for changes
gulp serve:testto run the tests in the browser
gulpto build your web app for production
gulp serve:distto preview the production build
gulp bootlintto lint Bootstrap markup. This is currently a standalone task and will only lint the index.html file in the app/ directory. Feel free to customize as necessary.
Specifying a Custom Gulp directory
By default, the generator assumes that all development will take place in app/ ... and that our final product will end up in dist/. However, certain projects might warrant having multiple client directories. In a situation like this, we must pass our Gulp tasks flags that specify the target directory for these processes. Imagine that we clone a project into a new directory called "clients/wholefoods":
git clone <repo URL here> clients/wholefoods
In order to run Gulp in this new directory, we must include additional flags as follows:
--from=clients/wholefoods --appDir=app/adv/1 --distDir=dist/adv/1
This methodology will allow us to import multiple pre-designed starter templates for a number of different clients within one repository.
- getting started with this generator
- recipes for integrating other popular technologies like CoffeeScript
- details about our Bower setup
- contribution docs and FAQ, good to check before posting an issue
--skip-welcome-messageSkips Yeoman's greeting before displaying options.
--skip-install-messageSkips the the message displayed after scaffolding has finished and before the dependencies are being installed.
--skip-installSkips the automatic execution of
npmafter scaffolding has finished.
jasmine. Defaults to
--no-babelScaffolds without Babel support (this only applies to
app/scripts, you can still write ES2015 in the gulpfile)