Clone github repository:
$ git clone https://github.com/ewape/gulp-boilerplate.git
Use following commands inside main directory to build local version of a project:
$ npm i
$ gulp build
Watching changes in files is handled by Browsersync.
$ gulp watch
$ gulp svg-sprite
Default configuration generates svg «symbol» mode sprite template based on .svg files from ./src/images/icons directory along with usage example in ./docs.
Svg-sprite documentation: https://github.com/jkphl/svg-sprite/blob/master/docs/configuration.md
Online configuration kickstarter for gulp: http://jkphl.github.io/svg-sprite/#gulp
$ gulp favicon
Favicon files are generated with gulp-real-favicon.
Options are defined in gulpfile.babel.js under faviconConfig variable. This setup uses faviconDataFile.json to generate HTML markup in ./src/html/templates/partials/favicon.njk file.
Input image supported formats: .png, .jpg, .svg.
$ gulp fonts
Downloads Google webfonts and updates @font-face declarations in ./src/scss/modules/_fonts.scss.
$ gulp w3c
This project uses Mozilla's Nunjucks templating.
- scrollMonitor detect element position in viewport
- Parsley.js - form validation
- autosize - textarea auto grow
$ npm i <devDependency-name> -D
$ npm i <dependency-name> -S
After updating sprites, favicons, fonts and dependencies rebuild project:
$ gulp clean
$ gulp build
This file is used by gulp-google-webfonts to download .woff files from Google Fonts and update @font-face declarations in ./src/scss/modules/_fonts.scss.
Supported formats:
# Tab-delimeted format
Oswald 400,700 latin,latin-ext
# Google format
Roboto:300,400,700&subset=latin-ext
Lato:300,400,700&subset=latin-ext