Need help with nwb?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

5.4K Stars 362 Forks Other 1.2K Commits 165 Opened issues


A toolkit for React, Preact, Inferno & vanilla JS apps, React libraries and other npm modules for the web, with no configuration (until you need it)

Services available


Need anything else?

Contributors list


Linux Travis Windows Appveyor npm package Coveralls


nwb is a toolkit for:

A zero-config development setup is provided, but nwb also supports configuration and plugin modules which add extra functionality (e.g. Sass support), should you need them


Installing globally provides an

command for quick development and working with projects.
npm install -g nwb

Note: if you're using npm 5 and getting an

EACCES: permission denied
error from nwb's PhantomJS dependency while installing globally, try passing an

npm install -g --unsafe-perm nwb

To use nwb's tooling in a project, install it as a

and use
commands in
npm install --save-dev nwb
  "scripts": {
    "start": "nwb serve-react-app",
    "build": "nwb build-react-app"

Quick Development

For quick development with React, Inferno, Preact or vanilla JavaScript, use the

nwb react
nwb inferno
nwb preact
nwb web
import React, {Component} from 'react'

export default class App extends Component { render() { return

Hello world!

} }
$ nwb react run app.js
✔ Installing react and react-dom
Starting Webpack compilation...
Compiled successfully in 5033 ms.

The app is running at http://localhost:3000/

$ nwb react build app.js
✔ Building React app

File size after gzip:

dist\app.cff417a3.js 46.72 KB

See Quick Development with nwb for a more detailed guide.

React Apps


nwb new react-app
to create a React app skeleton, preconfigured with npm scripts which use
for development:
nwb new react-app my-app
cd my-app/
npm start

Open localhost:3000, start editing the code and changes will be hot-reloaded into the running app.

npm test
will run the app's tests and
npm run build
will create a production build.

See Developing React Apps with nwb for a more detailed guide.

Preact Apps


nwb new preact-app
to create a Preact app skeleton:
nwb new preact-app my-app

Inferno Apps


nwb new inferno-app
to create an Inferno app skeleton:
nwb new inferno-app my-app

Vanilla JavaScript Apps


nwb new web-app
to create a vanilla JavaScript app skeleton:
nwb new web-app my-app

React Components and Libraries

nwb new react-component my-component

cd my-component/

npm start
will run a demo app you can use to develop your component or library against.

npm test
will run the project's tests and
npm run build
will create ES5, ES modules and UMD builds for publishing to npm.

See Developing React Components and Libraries with nwb for a more detailed guide.

npm Modules for the Web

nwb new web-module my-module

cd my-module/

npm test
will run the project's tests and
npm run build
will create ES5, ES modules and UMD builds for publishing to npm.



Why use nwb?

Get started quickly. Start developing from a single

file or generate a project skeleton.

Covers the whole development cycle. Development tools, testing and production builds for projects work out of the box, no configuration required.

Flexible. While everything works out of the box, you can also use an optional configuration file to tweak things to your liking.

Manages key development dependencies and configuration for you. Check out an example of the effect using nwb had on the amount of

and configuration to be managed in a real project it was dropped into.

MIT Licensed

Cover image created by GeorgioWan

Operating system icons created with Icons8

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.