It is a lightweight solution to state management that takes advantage of hooks. You can write local state using React Hooks and lift it up to React Context only when needed with minimum effort. | It takes an atomic approach to global React state management. Build state by combining atoms and renders are automatically optimized based on atom dependency. This solves the extra re-render issue of React context, eliminates the need for memoization, and provides a similar developer experience to signals while maintaining a declarative programming model. |
React state management library; Write local state using React Hooks | Minimal core API (2kb);
Many utilities and integrations;
TypeScript oriented;
Works with Next.js, Gatsby, Remix, and React Native;
React Fast Refresh with SWC and Babel plugins |
Statistics | |
GitHub Stars 4.0K | GitHub Stars 20.7K |
GitHub Forks 93 | GitHub Forks 696 |
Stacks 7 | Stacks 62 |
Followers 2 | Followers 3 |
Votes 0 | Votes 0 |
Integrations | |

It helps you write applications that behave consistently, run in different environments (client, server, and native), and are easy to test. t provides a great experience, such as live code editing combined with a time traveling debugger.

MobX is a battle tested library that makes state management simple and scalable by transparently applying functional reactive programming (TFRP). React and MobX together are a powerful combination. React renders the application state by providing mechanisms to translate it into a tree of renderable components. MobX provides the mechanism to store and update the application state that React then uses.

Small, fast and scaleable bearbones state-management solution. Has a comfy api based on hooks, that isn't boilerplatey or opinionated, but still just enough to be explicit and flux-like.

It is an effective multi-store state manager for Javascript apps, that allows you to manage data in complex applications.

An alternative side effect model for Redux apps

Vuex is a state management pattern + library for Vue.js applications. It serves as a centralized store for all the components in an application, with rules ensuring that the state can only be mutated in a predictable fashion. It also integrates with Vue's official devtools extension to provide advanced features such as zero-config time-travel debugging and state snapshot export / import.

Redux Thunk middleware allows you to write action creators that return a function instead of an action. The thunk can be used to delay the dispatch of an action, or to dispatch only if a certain condition is met. The inner function receives the store methods dispatch and getState as parameters.

State so simple, it goes without saying

Simple “selector” library for Redux (and others) inspired by getters in NuclearJS, subscriptions in re-frame and this proposal from speedskater.

It allows developers to dispatch a function that returns an observable, promise or iterable of action(s). Compose and cancel async actions to create side effects and more.