/essential-react

A minimal skeleton for building testable React apps using Babel

Primary LanguageJavaScriptMIT LicenseMIT

Travis branch Coveralls David npm


Deploy

A minimal skeleton for building testable React apps using Babel.

Design Goals

  • Use fewer tools (no yeoman, gulp, bower, etc...)
  • Babel 6 with Webpack and Hot Loader
  • Fast testing with mocked-out DOM
  • Import css files as class names
  • Separate Smart and Dumb components
  • No specific implementation of Flux or data fetching patterns

Getting Started

$ npm install

Start the local dev server:

$ npm run server

Navigate to http://localhost:8080/ to view the app.

Commands

A core philosophy of this skeleton app is to keep the tooling to a minimum. For this reason, you can find all the commands in the scripts section of package.json.

server

$ npm run server

Input: src/main.jsx

This leverages React Hot Loader to automatically start a local dev server and refresh file changes on the fly without reloading the page.

It also automatically includes source maps, allowing you to browse code and set breakpoints on the original ES6 code:

build

$ npm run build

Input: src/main.jsx

Output: build/app.js

Build minified app for production using the production shortcut.

test

$ npm test

Input: test/main.js

Output: coverage/

Leverages ava to execute the test suite and generate code coverage reports using nyc

coveralls

$ npm run coveralls

Input: coverage/lcov.info

Sends the code coverage report generated by nyc to Coveralls.

clean

$ npm run clean

Input: build/app.js

Removes the compiled app file from build.