2. Use Redux#
2.1. Status#
Accepted
2.2. Context#
The Open edX community needs a library to handle complex state management in React applications.
2.3. Decision#
For state management of complex client-side interactions, Redux must be used. This library was chosen because it sees strong use in the React community, but is also flexible enough to be used in situations where a hybrid React/Backbone architecture exists.
2.4. Consequence#
Redux has been adopted by the Open edX community as the library to use to handle complex state management in React applications.
2.5. Rejected Alternatives#
At the time of this decision, no rejected alternatives were documented.