Skip to content

gitter-badger/redux-devtools-extension

 
 

Repository files navigation

Redux DevTools Extension

Build Status Build status Windows

Demo

Usage

1. Get the extension

1.1 For Chrome
1.2 For Firefox
1.3 For Electron
1.4 For other browsers and non-browser environment

2. Use with Redux

2.1 Basic store

If you have a basic store as described in the official redux-docs, simply replace:

let store = createStore(reducer);

with

let store = createStore(reducer, window.devToolsExtension && window.devToolsExtension());
2.2 Advanced store setup
import { createStore, applyMiddleware, compose } from 'redux';

let store = createStore(reducer, initialState, compose(
  applyMiddleware(...middleware)
));

to this:

let store = createStore(reducer, initialState, compose(
  applyMiddleware(...middleware),
  window.devToolsExtension ? window.devToolsExtension() : f => f
));
  • Or with initialState but without middleware and enhancers arguments:
let store = createStore(reducer, initialState, 
  window.devToolsExtension && window.devToolsExtension()
);

Note: passing enhancer as last argument requires redux@>=3.1.0. For older versions apply it like here or here.

2.3 Together with Redux DevTools

You can use this extension together with vanilla Redux DevTools as a fallback, but not both simultaneously:

window.devToolsExtension ? window.devToolsExtension() : DevTools.instrument()

Make sure not to render DevTools when using the extension or you'll probably want to render the monitor from vanilla DevTools as follows:

{ !window.devToolsExtension ? <DevTools /> : null }

3. Use with universal (isomorphic) apps

  typeof window === 'object' && typeof window.devToolsExtension !== 'undefined' ? window.devToolsExtension() : f => f

4. For React Native, hybrid, desktop and server side Redux apps

Include Remote Redux DevTools, and from the extension's context menu choose 'Open Remote DevTools' or press Alt+Shift+arrow up for remote monitoring.

Documentation

##📺 Videos

Demo

Open these urls to test the extension:

Also you may run them from ./examples folder (on port 4001 and 4002 by default).

Credits

LICENSE

MIT

Created By

If you like this, follow @mdiordiev on twitter.