Use Redux
#########

Status
******

Replaced

(See :ref:`Use React Query`)

Context
*******

The Open edX community needs a library to handle complex state management in React applications.

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.

Consequence
***********

Redux has been adopted by the Open edX community as the library to use to handle complex state management in React applications.

Rejected Alternatives
*********************

At the time of this decision, no rejected alternatives were documented.
