- Install npm packages
- Cleans up the output
/build
directory (clean.js
) - Copies static files to the output folder (
copy.js
) - Launches Webpack compiler in a watch mode (via webpack-middleware)
- Launches Node.js server from the compiled output folder (
runServer.js
) - Launches Browsersync, HMR, and React Transform
- Cleans up the output
/build
folder (clean.js
) - Copies static files to the output folder (
copy.js
) - Creates application bundles with Webpack (
bundle.js
,webpack.config.js
)
- Builds the project from source files (
build.js
) - Pushes the contents of the
/build
folder to a remote server with Git
Flag | Description |
---|---|
--release |
Minimizes and optimizes the compiled output |
--verbose |
Prints detailed information to the console |
--static |
Renders specified routes as static html files |
For example:
$ npm run build -- --release --verbose # Build the app in production mode
or
$ npm start -- --release # Launch dev server in production mode
webpack.config.js
- Webpack configuration for both client-side and server-side bundlesrun.js
- Helps to launch other scripts withbabel-node
(e.g.babel-node tools/run build
).eslintrc
- ESLint overrides for built automation scripts
- Setting up build tool, finally using from ReactStarterKit
- Setting up router structure and server side rendering.
- Used ES7 Decorators (Stage 1)
- Used Class Properties (Stage 1)
- Used Spread Operator (Stage 1)
- Used Express (and for server side rendering)
- Used Mocha as a JavaScript test framework, and Chai as a assertion library
- Used Jade as a Template Engine
- Used AirBnb JavaScript Style Guide see .eslintrc file
- Used Enzyme as a JavaScript Testing utility for React