Looking for alternatives to mobx.dart in State management? Here are 9 comparable open-source projects, with our health scores and licenses so you can choose with confidence.
Redux is a small, predictable state container for JavaScript apps, built around a single immutable store, plain action objects, and pure reducer functions. Its official Redux Toolkit layer abstracts away boilerplate and codifies recommended patterns for real-world apps.
Zustand is a minimal, hook-based state management library for React (with a framework-agnostic vanilla core) built on simplified flux principles. It avoids context providers and boilerplate while handling React's tricky edge cases like zombie children and concurrency.
TanStack Query is an async state management library for fetching, caching, synchronizing, and updating server state in web apps. It abstracts the lifecycle of asynchronous data with declarative queries and mutations, supporting any data source (REST, GraphQL, promises) across React, Vue, Svelte, Solid, and Angular.
React Hook Form is a performant, dependency-free form library for React that uses uncontrolled inputs and hooks (register, handleSubmit, formState) to minimize re-renders, with built-in HTML validation and schema resolvers for Zod, Yup, Joi, and others.
Vuex is the formerly-official centralized state management library for Vue.js, providing a single store with predictable, mutation-controlled state and Vue devtools integration for time-travel debugging. It has been superseded by Pinia as Vue's recommended state solution and is now in maintenance mode.
MobX is a signal-based reactive state management library that makes any object observable and automatically tracks which derived computations and UI components depend on which fields, re-running only what's strictly needed. It's framework-agnostic at its core but most commonly paired with React via mobx-react/mobx-react-lite.
Jotai is a minimal, atom-based state management library for React built around tiny composable "atoms" of state that can be derived, combined, and made async. It avoids string keys, integrates with Suspense, and scales from a useState replacement to large TypeScript apps.
ReactiveCocoa provides reactive, declarative extensions to Apple's Cocoa frameworks, built on ReactiveSwift's stream-of-values primitives. It adds UI bindings, control-event signals, Objective-C method interception, and key-value observation wrapped as composable reactive streams for iOS, macOS, watchOS, and tvOS apps.
Relay is Facebook's GraphQL client framework for React that lets components declare their own data requirements via colocated GraphQL fragments, then compiles and batches them into efficient network requests with built-in caching, mutations, optimistic updates, and pagination.
See the full mobx.dart overview or browse all State management.