Redux (JavaScript library)

Redux is an open-source JavaScript library for managing application state. It is most commonly used with libraries such as React or Angular for building user interfaces. Similar to (and inspired by) Facebook's Flux architecture, it was created by Dan Abramov and Andrew Clark.

Redux
Original author(s)Dan Abramov and Andrew Clark
Initial releaseJune 2, 2015 (2015-06-02)[1]
Stable release
4.0.5 / December 23, 2019 (2019-12-23)[2]
Repository
Written inJavaScript
PlatformCross-platform software
TypeJavaScript library
LicenseMIT
Websiteredux.js.org

Description

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.

It is influenced by the functional programming language Elm.[3]

History

Redux was created by Dan Abramov and Andrew Clark in 2015.[4] Abramov began writing the first Redux implementation while preparing for a conference talk[5] at React Europe[6] 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."[7]

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?"[4]

Abramov reached out to Andrew 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.[4]

In February 2019, useReducer was introduced as a React hook in the 16.8 release. It provides an API that is consistent with Redux, enabling developers to create Redux-like stores that are local to component states.[8]

gollark: Also, to understand the statement of the principle itself it would be helpful if you knew what standard deviations were, which I assume you do not.
gollark: To actually understand why it exists, I believe you need maths to something something wavefunctions.
gollark: Yes.
gollark: Wikipedia has this nice statement of it, which is obviously true because Wikipedia says it.
gollark: It's not that one is "not defined", or that you can determine one but not the other, but that if you measure it you must trade off accuracy in one for the other.

References

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.