/react-hot-loader

Tweak React components in real time.

Primary LanguageJavaScript

React Hot Loader npm package

This is a stable for daily use in development implementation of React live code editing.

The Talk

React Hot Loader was demoed together with Redux at React Europe.
Watch Dan Abramov's talk on Hot Reloading with Time Travel.

Installation

npm install --save-dev react-hot-loader

Usage

If you want to try hot reloading in a new project, try one of the starter kits, React Hot Boilerplate being the most minimal one.

To use React Hot Loader in an existing project, you need to

  • switch to Webpack for builds (instead of RequireJS or Browserify);
  • enable Hot Module Replacement, which is a Webpack feature;
  • configure Webpack to use React Hot Loader for JS or JSX files.

These steps are covered by the walkthrough.

If you'd rather stay with Browserify, check out LiveReactload by Matti Lankinen.

Flux

Redux is a Flux implementation that supports hot reloading of everything out of the box. Read The Evolution of Flux Frameworks for some context around its creation.

React Native

You can use React Hot Loader to tweak a React Native application. Check out react-native-webpack-server by Michael Johnston.

Troubleshooting

If something doesn't work, in 99% cases it's a configuration issue. A missing option, a wrong path or port. Webpack is very strict about configuration, and the best way to find out what's wrong is to compare your project to an already working setup, such as React Hot Boilerplate, bit by bit. We're also gathering Troubleshooting Recipes so send a PR if you have a lesson to share!

Documentation

Docs are in a bit of a flux right now because I'm in the process of updating everything to document the major 1.0 release.

If you just learned about React Hot Loader and want to find out more, check out the walkthrough and then try one of the starter kits.

If you've been with us for a while, read 1.0 release notes and migration guide.

Got Questions?

Gitter

Watch the repo to stay tuned!

License

MIT (http://www.opensource.org/licenses/mit-license.php)