pmndrs

    pmndrs/zustand

    🐻 Bear necessities for state management in React

    58.9K stars
    2.2K forks
    58.9K GitHub watchers
    Updated Nov 1, 2026
    View on GitHub

    Build with Backblaze B2

    SDKs, agent skills, IDE extensions, and reference pipelines from Backblaze Labs. All open source.

    Explore Backblaze Labs

    Loading star history...

    Where it stands

    Rank, growth pace and release cadence relative to everything GStars tracks.

    2 releases in the last 90 days, the latest 10 days ago, with 336 contributors on GitHub.

    Gained 35% fewer stars in the last 90 days than in the 90 days before.

    Use Cases & Benefits

    • Provides a small, fast, and scalable state management solution for React using simplified flux principles and hooks.
    • Offers a minimal API without boilerplate or context providers, ensuring efficient re-renders and solving common React state pitfalls.
    • Use for managing global state in React apps without wrapping components in context providers or adding boilerplate.
    • Use for building type-safe, scalable state stores with TypeScript support and middleware like persistence and immer.
    • Use for integrating state management outside React components with vanilla stores and subscribing to state changes directly.

    Should you depend on it?

    License terms, project hygiene and risks, from GitHub metadata and GStars' snapshots.

    License

    MIT

    Permissive: commercial use, modification and redistribution are allowed with attribution.

    Community files

    • README: present
    • Contributing guide: present

    Watch-outs

    No watch-outs from GStars' checks.

    General guidance from repository metadata, not legal advice. How we score

    From the README

    A small, fast and scalable bearbones state-management solution using simplified flux principles. Has a comfy API based on hooks, isn't boilerplatey or opinionated.

    Don't disregard it because it's cute. It has quite the claws, lots of time was spent dealing with common pitfalls, like the dreaded zombie child problem, react concurrency, and context loss between mixed renderers. It may be the one state-manager in the React space that gets all of these right.

    You can try a live demo and read the docs.

    :warning: This readme is written for JavaScript users. If you are a TypeScript user, be sure to check out our TypeScript Usage section.

    Your store is a hook! You can put anything in it: primitives, objects, functions. State has to be updated immutably and the set function merges state to help it.

    Use the hook anywhere, no providers are needed. Select your state and the component will re-render on changes.

    Excerpt from the pmndrs/zustand README on GitHub (MIT license). Β© its authors.Read the full README on GitHub

    Daily snapshots

    Stars gained per day, and how forks and open issues moved, from GStars' daily snapshots

    Forks

    2.2K+16

    Open issues

    5+0

    Compared with peers in Frontend

    Fastest-growing repositories GStars tracks in this cohort for the week of Nov 8, by 7-day star growth

    pmndrs/zustand compared with Frontend repositories by stars, 7-day star growth, health score and last release
    RepositoryStars+7dHealthLast release
    heygen-com/hyperframes82.3K+4.0K75today
    remotion-dev/remotion72.3K+1.9K751 day ago
    DuarteSantos8/openGym20.8K+1.7K757 days ago
    superplanehq/superplane9.8K+1.0K7513 days ago
    chthollyphile/folia-major12.3K+92875today
    pmndrs/zustand58.9Kβ€”5910 days ago
    Category median20.8K+1.7K75β€”

    Also by pmndrs

    Other repositories from this maintainer that GStars tracks

    Discover Repositories

    Search across tracked repositories by name or description