Repolode
reduxjs

reduxjs/redux

A JavaScript library for predictable, maintainable global state management, usable with React or any other view library.

Stars
61,448
Forks
15,093
Open issues
15
Last commit
yesterday

What is it?

Redux is a JavaScript library for managing application-wide state in a predictable way. All state lives in a single store, and changes happen only by dispatching actions that are processed by pure reducer functions. This makes application behavior consistent across client, server, and React Native environments and keeps state changes easy to test and trace.

The core library is small, around 2 kB including dependencies, and works with React through the react-redux bindings or with any other view layer. An ecosystem of addons extends it, and the project provides a time-travel debugger through Redux DevTools.

Redux Toolkit is the officially recommended way to write Redux logic. It wraps the core with utilities such as createSlice and configureStore, uses Immer so reducers can be written with direct mutations, and reduces boilerplate and common mistakes.

Key features

  • 01Single store with state changes driven by dispatched actions and pure reducers
  • 02Works with React via react-redux or with any other view library
  • 03Core library is about 2 kB including dependencies
  • 04Time-travel debugging through Redux DevTools
  • 05Redux Toolkit provides utilities like createSlice and configureStore

Use cases

  • Managing shared application state across many React components
  • Building apps that need consistent state logic across client, server, and React Native
  • Creating a state layer that is easy to unit test and trace

Quick start

  1. 1

    Install the Redux core library with npm

    npm install redux
  2. 2

    Install Redux Toolkit and React-Redux for React apps (recommended)

    npm install @reduxjs/toolkit react-redux
  3. 3

    Or create a new Vite project with the official Redux+TS template

    npx tiged reduxjs/redux-templates/packages/vite-template-redux my-app

Topics

FAQ

What is redux?
A JavaScript library for predictable, maintainable global state management, usable with React or any other view library. Redux is a JavaScript library for managing application-wide state in a predictable way. All state lives in a single store, and changes happen only by dispatching actions that are processed by pure reducer functions. This makes application behavior consistent across client, server, and React Native environments and keeps state changes easy to test and trace.
Is redux free to use? What license does it have?
redux is open source under the MIT license. Check the license terms before using it in commercial products.
Is redux still maintained?
Actively maintained. The last commit to redux was on Oct 20, 2026.
What can I use redux for?
Managing shared application state across many React components Building apps that need consistent state logic across client, server, and React Native Creating a state layer that is easy to unit test and trace
How do I install redux?
Install the Redux core library with npm: npm install redux Install Redux Toolkit and React-Redux for React apps (recommended): npm install @reduxjs/toolkit react-redux Or create a new Vite project with the official Redux+TS template: npx tiged reduxjs/redux-templates/packages/vite-template-redux my-app
Where can I get redux?
The source code and installation instructions are on GitHub: https://github.com/reduxjs/redux

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects