|Original author(s)||Dan Abramov and Andrew Clark|
|Initial release||June 2, 2015|
4.0.0 / April 17, 2018
Redux is a small library with a simple, limited API designed to be a predictable container for application state. It operates in a similar fashion to a reducing function, a functional programming concept.
Redux was created by Dan Abramov and Andrew Clark in 2015. Abramov began writing the first Redux implementation while preparing for a conference talk at React Europe on hot reloading. Abramov remarks, "I was trying to make a proof of concept of Flux where I could change the logic. And it would let me time travel. And it would let me reapply the future actions on the code change."
Abramov was struck by the similarity of the Flux pattern with a reducing function. "I was thinking about Flux as a reduce operation over time... your stores, they accumulate state in response to these actions. I was thinking of taking this further. What if your Flux store was not a store but a reducer function?"
Abramov reached out to Clark (author of the Flux implementation Flummox) as a collaborator. Among other things, he credits Clark with making the Redux ecosystem of tools possible, helping to come up with a coherent API, implementing extension points such as middleware and store enhancers.
- Initial release tag
- "Releases – ReactJS/Redux". GitHub.
- "An Introduction To Redux". Smashing Magazine.
- Abramov, Dan. "The History of React and Flux with Dan Abramov". Three Devs and a Maybe. Retrieved 7 April 2018.
- "Dan Abramov - Live React: Hot Reloading with Time Travel at react-europe 2015". Youtube.
- "ReactEurope 2015 - Live React: Hot Reloading with Time Travel". ReactEurope.
- Abramov, Dan. "Progression, Curiosity, and Burnout with Dan Abramov". TylerMcGinnis.com. Retrieved 7 April 2018.