A boilerplate for a Koa Redux React application with Webpack, Mocha and SASS
Boilerplate for a Koa Redux React app with Webpack, Mocha, SASS, Babel, ESLint...
Docs
Detailed blogpost on how was this boilerplate built
Good to understand what's what.
Instructions
-
Clone repo
git clone https://github.com/mezod/boilerplate-koa-redux-react.git
-
Install dependencies
npm install
-
Run the webserver
npm run webserver
Webserver should be running at http://localhost:3000/
-
Make build
npm run build
-
Run development server
npm run dev
Development server should be running at http://localhost:8080/
Real projects using this boilerplate
everydaycheck.com - Simple and beautiful habit tracker
List of techs
- Node - JS runtime environment
- npm - package manager
- Koa - api framework
- koa-router - api router
- koa-cors - cors support
- Bookshelf.js - ORM
- knex - query builder
- mysql - MySQL driver for JS
- Babel - ES6 transpiler
- Webpack - module bundler & task runner
- React - interfaces
- react-hot-loader - hot reloading for react
- react-router - react application router
- react-redux - react bindings for redux
- Immutable - data structures
- Redux - awesome flux architecture
- redux-thunk - thunk middleware for redux
- isomorphic-fetch - API fetch network requests
- redux-devtools - redux development tool
- SASS - styles
- ESLint - linter
- Mocha - unit tests
- jsdom - vdom to test React without browser
- Chai - assertion library
- A bunch of useful scripts
Scripts
-
npm run webserver
Starts Koa server
-
npm run test
Runs unit tests
-
npm run test:watch
Watches for changes to run unit tests
-
npm run build
Bundles the application
-
npm run dev
Starts webpack development server
-
npm run lint
Runs the linter
-
npm run deploy
Creates the production ready files
-
npm run clean
Removes the bundled code and the production ready files