For global context providers, the strongest matches are pmndrs/zustand (Zustand is a flagship React global state management library), reactjs/react-redux (React Redux provides robust global state management with TypeScript) and pmndrs/jotai (Jotai is a React global state management library built). reduxjs/react-redux and beekai-oss/little-state-machine round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Hand-picked global state management libraries for your apps. Compare top GitHub repositories by stars, activity, and alternatives to find the right fit.
Zustand is a state management library that provides a centralized store for managing shared application data. It functions as a reactive container that connects application state to components, allowing them to subscribe to specific slices of data and trigger updates automatically. By utilizing selector-based data access and immutable state updates, the library ensures that components only re-render when their observed data changes, maintaining a predictable and efficient data flow. The library distinguishes itself through a pluggable, middleware-based architecture that allows for the extensi
Zustand is a flagship React global state management library featuring selector-based access, TypeScript support, middleware for devtools, and a famously small bundle size.
React Redux is a global state management bridge and a set of bindings that connect React components to a Redux state store. It serves as a communication layer and state store connector, allowing a declarative user interface to synchronize with a centralized source of truth. The library enables the synchronization of shared global state across an application by providing mechanisms to read state and dispatch actions directly from the view layer. It ensures predictable state transitions by bridging the gap between UI components and the Redux state container. The project covers core capabilitie
React Redux provides robust global state management with TypeScript support, selector capabilities, and deep React integration, making it a definitive choice for this category.
Jotai is a state management library for React applications that utilizes an atomic model to handle data. It organizes application state into small, independent units called atoms, which automatically track dependencies and trigger granular updates to components. By building state through these composable primitives, the library ensures that only the necessary parts of an application re-render when data changes. The library distinguishes itself through its flexible approach to state composition and asynchronous data handling. It integrates promises directly into the state model, allowing devel
Jotai is a React global state management library built on an atomic model with native TypeScript support, fine-grained selector-like updates, and developer tool integrations.
React-Redux provides the official bindings that connect a Redux state container to a React user interface. It functions as a state management integration and UI state connector, enabling the synchronization of a centralized data store with a component tree. The library ensures a predictable UI state flow by implementing a unidirectional data path between the interface and the state container. It allows components to read global state and dispatch actions to trigger updates, maintaining a single source of truth across the application. The project handles state synchronization through a combin
React-Redux is the official React binding library for Redux that provides centralized global state management and hooks like useSelector, though it relies on Redux as its underlying store rather than acting as a standalone React Context solution.
Little State Machine is a lightweight state management library for React applications that provides a centralized data store for managing shared application information. It utilizes a context-based provider pattern to distribute state across the component tree, ensuring consistent data access without the need for manual property drilling. The library distinguishes itself through built-in support for automatic browser storage persistence, which synchronizes the in-memory state with local or session storage to maintain data continuity across page refreshes. It also incorporates middleware-drive
Little State Machine is a lightweight React state management library that provides a centralized data store using a context-based provider pattern, fulfilling the core global state requirement even if it lacks dedicated developer tools.
Redux is a global state management library and predictable state container for JavaScript applications. It implements a store pattern that maintains the entire application state as a single source of truth, ensuring consistent behavior across different components and environments. The library relies on a unidirectional data flow where state updates follow a strict one-way cycle. This is achieved through a system of discrete actions, pure-function reducers, and a centralized store to ensure that state transitions remain predictable and traceable. The framework includes capabilities for monito
Redux provides global state management with a centralized store and TypeScript support, though modern React usage typically relies on hooks and context wrappers rather than its legacy boilerplate.
Redux is a predictable state container designed to manage global application data through a centralized store. It operates on a unidirectional data flow architecture where state transitions are triggered by dispatching action objects, which are then processed by pure reducer functions to produce a new, immutable state tree. This approach ensures that application data remains consistent and traceable across the entire component hierarchy. The library distinguishes itself through a functional pattern that relies on pure functions for state logic and a middleware-based extension system. This mid
Redux is a foundational centralized state container that manages global application data through a unidirectional data flow and integrates cleanly with React, though it requires companion packages for context-like ergonomics rather than building directly on React context.
Redux Toolkit is a state management toolkit and store configurator designed to simplify the development of Redux applications by reducing boilerplate code. It functions as an immutable state manager and a centralized store configuration system that provides a streamlined workflow for managing global application state. The project distinguishes itself through an automated async action orchestrator that manages the lifecycle of promises by automatically dispatching pending, fulfilled, and rejected actions. It also acts as a normalized state organizer, providing tools to structure complex relati
Redux Toolkit is a comprehensive global state management library for React applications that provides centralized store configuration and TypeScript support, though it relies on standard React bindings rather than direct Context integration.
Easy-peasy is a React state management library and typed framework that provides a centralized store for managing global application state. It functions as an immutable state store and an async state orchestrator, ensuring end-to-end type safety for state definitions, actions, and derived values. The library distinguishes itself by converting direct mutation syntax into immutable updates to simplify the management of nested data. It includes a mechanism for persisting the state tree to storage and rehydrating it during the application boot process, with the ability to suspend the user interfa
Easy-peasy is a React global state management library built on top of Redux and Immer that provides a centralized store, TypeScript support, and mutation-syntax updates, though it lacks dedicated developer tools out of the box.
State usage tracking with Proxies. Optimize re-renders for useState/useReducer, React Redux, Zustand and others.
React-tracked provides optimized global state management built on top of React context and hooks, featuring fine-grained selector support via Proxies and full TypeScript integration.
NOT MAINTAINED Simple global state for React with Hooks API without Context API
This repository provides a lightweight global state solution for React using hooks and TypeScript, though it bypasses React Context and lacks developer tools.
Use context selector is a state management library that allows applications to share state across component trees without prop drilling or unnecessary re-renders. It provides a specialized React context creation mechanism alongside hooks for reading targeted context slices, ensuring that components update only when their specific data changes. The library features granular dependency tracking and selector-based subscriptions to prevent sluggish rendering caused by broad state updates. It also includes cross-root context bridging to connect isolated component trees under a single provider and
This library provides selector-based React context integration for global state management with TypeScript support, though it is focused on a specific hook rather than a full state-management suite.
Refluxjs is a state management library designed to implement a unidirectional dataflow architecture. It manages application state through a strict cycle of actions and stores to prevent unpredictable update loops. The library coordinates asynchronous operations by managing event streams and triggering related success or failure actions. It also provides a global state registry that tracks store states via unique identifiers, enabling deep cloning for persistence and time-travel debugging. Its capability surface covers centralized state management, including the creation of data stores and de
Reflux is a React-compatible unidirectional state management library that provides global state registries and actions, though it is older and relies on store-action patterns rather than modern hooks or built-in TypeScript definitions.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| pmndrs/zustand | 58.4K | TypeScript | MIT | |
| reactjs/react-redux | 23.5K | TypeScript | MIT | |
| pmndrs/jotai | 21.2K | TypeScript | MIT | |
| reduxjs/react-redux | 23.5K | TypeScript | MIT | |
| beekai-oss/little-state-machine | 1.5K | TypeScript | MIT | |
| reactjs/redux | 61.5K | TypeScript | MIT | |
| reduxjs/redux | 61.5K | TypeScript | MIT | |
| reduxjs/redux-toolkit | 11.2K | TypeScript | MIT | |
| ctrlplusb/easy-peasy | 5K | JavaScript | MIT | |
| dai-shi/react-tracked | 2.8K | TypeScript | MIT |