TL;DR: Allowing Redux DevTools Extension in production has lots of benefits and no harm. To make it even better, now you can configure which features to allow. In addition, we’ve released an npm package to be used in production.
I’ve seen lots of tweets warning that sites like Pinterest, Intercom, Bitbucket, Flipkart and others left Redux DevTools in production. However, there’s nothing wrong here. The misconception is that they didn’t include Redux DevTools in the production bundle, but just allowed the browser extension to be used there. The difference between those two is signifiant.
TL;DR: I just released Redux DevTools Extension v2.7, which brings “pausing” and “locking” features to improve the way of developing and debugging Redux apps. As a consequence, extension’s store enhancer is being deprecated.
Hot Reloading with Time Travel helps to boost the developer’s productivity significantly and makes the development fun. It could be more powerful visual alternative to TDD. However, you might not taking advantage of its full potential:
I never got to implementing the real workflow I imagined, so “Revert / Commit” buttons at the top only hint at it in a non-friendly way.
Here’s how I…
Note that window.devToolsExtension has been renamed to window.__REDUX_DEVTOOLS_EXTENSION__.
Even if you’re using Redux, seldom you have a single source of truth. There’re local states in your React components or some effects in thunks and sagas, which you want to track.
Starting from 2.0, you can integrate Redux DevTools Extension with any architecture which handles the state. You can now have multiple stores or different instances for every React component’s local state.
There are two ways of interacting with it.
Redux is just about pure functions. If you’re still wondering whether you need it for your use case or just having…
“ Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it. ” — Brian Kernighan
Flux architectures impose your data to flow in one direction, that makes your app state predictable, and easy to debug with time travelling and reproducing the exact state. Here we’ll analyze practical tools to accomplish that.