Need advice about which tool to choose?Ask the StackShare community!

MobX

552
457
+ 1
114
Zustand

22
45
+ 1
10
Add tool

MobX vs Zustand: What are the differences?

MobX: Simple, scalable state management. 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; Zustand: Bear necessities for state management in React. 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.

MobX and Zustand can be categorized as "State Management Library" tools.

MobX and Zustand are both open source tools. MobX with 21K GitHub stars and 1.32K forks on GitHub appears to be more popular than Zustand with 1.58K GitHub stars and 44 GitHub forks.

Get Advice from developers at your company using Private StackShare. Sign up for Private StackShare.
Learn More
Pros of MobX
Pros of Zustand
  • 26
    It's just stupidly simple, yet so magical
  • 18
    Easier and cleaner than Redux
  • 15
    Fast
  • 13
    Automagic updates
  • 13
    React integration
  • 10
    Computed properties
  • 8
    ES6 observers and obversables
  • 7
    Global stores
  • 3
    Flexible architecture the requeriment
  • 1
    Has own router package (mobx-router)
  • 5
    Simple API
  • 3
    Unopinionated
  • 1
    Supports Redux DevTools
  • 1
    Asynchronous action out the box

Sign up to add or upvote prosMake informed product decisions

Cons of MobX
Cons of Zustand
  • 1
    Maturity
  • 1
    Requires function component

Sign up to add or upvote consMake informed product decisions

- No public GitHub repository available -

What is MobX?

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.

What is Zustand?

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.

Need advice about which tool to choose?Ask the StackShare community!

What companies use MobX?
What companies use Zustand?
See which teams inside your own company are using MobX or Zustand.
Sign up for Private StackShareLearn More

Sign up to get full access to all the companiesMake informed product decisions

What tools integrate with MobX?
What tools integrate with Zustand?

Blog Posts

What are some alternatives to MobX and Zustand?
Relay Framework
Never again communicate with your data store using an imperative API. Simply declare your data requirements using GraphQL and let Relay figure out how and when to fetch your data.
Knockout
It is a JavaScript library that helps you to create rich, responsive display and editor user interfaces with a clean underlying data model. Any time you have sections of UI that update dynamically (e.g., changing depending on the user’s actions or when an external data source changes), it can help you implement it more simply and maintainably.
GraphQL Cache
A custom middleware for graphql-ruby that handles key construction and cache reads/writes transparently.
Flux
Flux is the application architecture that Facebook uses for building client-side web applications. It complements React's composable view components by utilizing a unidirectional data flow. It's more of a pattern rather than a formal framework, and you can start using Flux immediately without a lot of new code.
Apollo
Build a universal GraphQL API on top of your existing REST APIs, so you can ship new application features fast without waiting on backend changes.
See all alternatives