Ecosystem
Redux is a tiny library, but its contracts and APIs are carefully chosen to spawn an ecosystem of tools and extensions.
For an extensive list of everything related to Redux, we recommend Awesome Redux. It contains examples, boilerplates, middleware, utility libraries, and more.
On this page we will only feature a few of them that the Redux maintainers have vetted personally. Don’t let this discourage you from trying the rest of them! The ecosystem is growing too fast, and we have a limited time to look at everything. Consider these the “staff picks”, and don’t hesitate to submit a PR if you’ve built something wonderful with Redux.
Learning Redux
Screencasts
- Getting Started with Redux — Learn the basics of Redux directly from its creator (30 free videos)
Example Apps
- SoundRedux — A SoundCloud client built with Redux
- Shopping Cart (Flux Comparison) — A shopping cart example from Flux Comparison
Tutorials and Articles
- Redux Tutorial — Learn how to use Redux step by step
- Redux Egghead Course Notes — Notes on the Redux Egghead video course
- What the Flux?! Let’s Redux. — An intro to Redux
- A cartoon intro to Redux — A visual explanation of Redux data flow
- Understanding Redux — Learn the basic concepts of Redux
- Handcrafting an Isomorphic Redux Application (With Love) — A guide to creating a universal app with data fetching and routing
- Full-Stack Redux Tutorial — A comprehensive guide to test-first development with Redux, React, and Immutable
- Understanding Redux Middleware — In-depth guide to implementing Redux middleware
- A Simple Way to Route with Redux — An introduction to Redux Simple Router
Talks
- Live React: Hot Reloading and Time Travel — See how constraints enforced by Redux make hot reloading with time travel easy
- Cleaning the Tar: Using React within the Firefox Developer Tools — Learn how to gradually migrate existing MVC applications to Redux
- Redux: Simplifying Application State — An intro to Redux architecture
Using Redux
Bindings
- react-redux — React
- ng-redux — Angular
- ng2-redux — Angular 2
- backbone-redux — Backbone
- redux-falcor — Falcor
- deku-redux — Deku
Middleware
- redux-thunk — The easiest way to write async action creators
- redux-promise — FSA-compliant promise middleware
- redux-rx — RxJS utilities for Redux, including a middleware for Observable
- redux-logger — Log every Redux action and the next state
- redux-immutable-state-invariant — Warns about state mutations in development
- redux-analytics — Analytics middleware for Redux
- redux-gen — Generator middleware for Redux
- redux-saga — An alternative side effect model for Redux apps
Routing
- redux-simple-router — Ruthlessly simple bindings to keep React Router and Redux in sync
- redux-router — Redux bindings for React Router
Components
- redux-form — Keep React form state in Redux
Enhancers
- redux-batched-subscribe — Customize batching and debouncing calls to the store subscribers
- redux-history-transitions — History transitions based on arbitrary actions
- redux-optimist — Optimistically apply actions that can be later committed or reverted
- redux-undo — Effortless undo/redo and action history for your reducers
- redux-ignore — Ignore redux actions by array or filter function
- redux-recycle — Reset the redux state on certain actions
- redux-batched-actions — Dispatch several actions with a single subscriber notification
- redux-search — Automatically index resources in a web worker and search them without blocking
- redux-electron-store — Store enhancers that synchronize Redux stores across Electron processes
Utilities
- reselect — Efficient derived data selectors inspired by NuclearJS
- normalizr — Normalize nested API responses for easier consumption by the reducers
- redux-actions — Reduces the boilerplate in writing reducers and action creators
- redux-act — An opinionated library for making reducers and action creators
- redux-transducers — Transducer utilities for Redux
- redux-immutablejs — Integration tools between Redux and Immutable
- redux-tcomb — Immutable and type-checked state and actions for Redux
- redux-mock-store — Mock redux store for testing your app
Developer Tools
- Redux DevTools — An action logger with time travel UI, hot reloading and error handling for the reducers, first demoed at React Europe
- Redux DevTools Extension — A Chrome extension wrapping Redux DevTools and providing additional functionality
Community Conventions
- Flux Standard Action — A human-friendly standard for Flux action objects
- Canonical Reducer Composition — An opinionated standard for nested reducer composition
- Ducks: Redux Reducer Bundles — A proposal for bundling reducers, action types and actions
Translations
- 中文文档 — Chinese
- 繁體中文文件 — Traditional Chinese
- Redux in Russian — Russian
More
Awesome Redux is an extensive list of Redux-related repositories.