Skip to content
Branch: master
Go to file


Please see Neutrino for an alternative!

Create and build React web applications with zero initial configuration and minimal fuss.

Neo bakes in the best-of-the-bunch configurations and setup to make developing React-based sites quicker and easier. It is not just another React boilerplate, rather Neo gives you a single development dependency enabling you to develop, test, and build which let's you hit the ground running.

Neo: Introduction on Medium


  • React, Redux, React Router
  • Webpack
  • ESLint, Babel, ES2015 + modules, Stage 0 preset
  • Tests and coverage with Karma, Mocha, Chai, and Enzyme
  • Immutable
  • Bootstrap 4 and Sass
  • Travis CI


  • Node.js v4+ and npm

Sample App

To view a sample application which contains the initial output of Neo after running init, check out eliperelman/neo-example.

Initialize empty project


npm install -g mozilla-neo
mkdir <project-name> && cd <project-name>
neo init # and follow the prompts


mkdir -p <project-name>/node_modules && cd <project-name>
npm install mozilla-neo
node_modules/.bin/neo init # and follow the prompts
Sample output
→ create package.json
→ create src/
→ create tests/
→ create .gitignore
→ create .travis.yml
→ create LICENSE
→ create

Install in existing project

npm install --save-dev mozilla-neo

Make changes to configuration by following the scaffold init guide.


  • Add code to src/ and tests to tests/.
  • Build and watch changes in src/ with npm start.
  • Lint and build the project with npm run build.
  • Run tests with npm test.



  • Support deeply-nested test files in tests/


  • Support importing modules relative to src/
  • Use svg-url-loader for SVGs


  • Added support for building projects using Node.js v4+


  • Added support for JSON loading


  • Removed Elm from being "baked in"
  • Added support for web workers via worker-loader
  • Updated a few dependencies


  • Removed config/eslint.js in favor of config/eslint.core.js and config/
  • Moved src/app.js into project for easy customization and removal


Note: There is currently a bug in npm from being able to run the npm test command in this repo in development. As a workaround, make sure you are using a npm 3.8.9 or less.


If you are having issues, please let us know.

Join our Slack community at

We also have an IRC channel #neo on Mozilla IRC.


This project is licensed under the Mozilla Public License v2.0

You can’t perform that action at this time.