This project is based on gulp-starter and includes React, Babel, Jade templating, HTML5 boilerplate, Normalize, html5shiv, Bourbon, Neat and Bitters in a Browserify/Gulp workflow.
It is recommended that you use eslint and eslint-plugin-react with this project starter. Install them with npm install -g eslint eslint-plugin-react
npm install
After that, just run the default gulp task with:
gulp
All paths and plugin settings have been abstracted into a centralized config object in gulp/config.js. Adapt the paths and settings to the structure and needs of your project.
There is also a production task you can run:
gulp production
This will run JavaScript tests, then re-build optimized, compressed css and js files to the build folder, as well as output their file sizes to the console. It's a shortcut for running the following tasks: karma, images, sass,pubfiles, jade, minifyCss, uglifyJs.
This repo includes a basic js testing setup with the following: Karma, Mocha, Chai, and Sinon. There is karma gulp task, which the production task uses to run the tests before compiling. If any tests fail, the production task will abort.
To run the tests and start monitoring files:
./node_modules/karma/bin/karma start
Want to just run karma start? Either add alias karma="./node_modules/karma/bin/karma" to your shell config or install the karma command line interface globally with npm install -g karma-cli.