- React;
- Alt as the flux implementation;
- Webpack for asset bundling;
- React hot loader enabled out of the box. Changes to React components will show in the browser immediately without a full reload;
- Babel for ES6+ transpilation;
- SASS (SCSS or Sass style), Less, and Autoprefixer enabled by default through Webpack;
- Image loaders setup and ready to go so you can reference your images as
require()
statements in JS, or just useurl()
as usual in CSS and Webpack will take care of the rest; - Karma + Mocha & Chai for testing;
- Optional support for ESLint via babel-eslint.
Fork this repo, then run:
npm install
npm run start-local
That will fire up a webpack dev server in hot mode. Most changes will be reflected in the browser automatically without a browser reload. You can view the app in the browser at http://localhost:8080
.
The tests use Karma, Mocha and Chai through PhantomJS. See the example test in app/Application/__tests__/index.js
. The test suite can be run in watch mode (tests will re-run each time a file changes), using:
npm run test:watch
To generate a production build, run:
npm run build
The above command will generate a dist
folder with the appropriate index.html file along with the minified CSS and JS files.
Linting settings can be be found in .eslintrc
, consult its documentation. Linting is run before each webpack build when a .eslintrc
file is present.