Package category
State management
Application state containers and stores for UI frameworks.
415 packages5 comparisons
Packages compared
415 packages
| Package | Weekly downloads | 12-month change | 52 weeks | Gzip | Last release | Module | Types | Categories |
|---|---|---|---|---|---|---|---|---|
| @zag-js/checkbox Core logic for the checkbox widget implemented as a state machine | 787.1k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | UI component libraries, State management |
| @zag-js/signature-pad Core logic for the signature-pad widget implemented as a state machine | 784.8k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | UI component libraries, State management |
| @zag-js/steps Core logic for the steps widget implemented as a state machine | 777.8k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | UI component libraries, State management |
| @zag-js/splitter Core logic for the splitter widget implemented as a state machine | 775.4k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | UI component libraries, State management |
| @zag-js/qr-code Core logic for the qr-code widget implemented as a state machine | 771.2k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | UI component libraries, State management |
| @zag-js/editable Core logic for the editable widget implemented as a state machine | 770.1k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | UI component libraries, State management |
| @zag-js/clipboard Core logic for the clipboard widget implemented as a state machine | 763k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | DOM and browser utilities, State management |
| @zag-js/timer Core logic for the timer widget implemented as a state machine | 757.3k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | UI component libraries, State management |
| mutative A JavaScript library for efficient immutable updates | 755.2k | +581% | - | 1 year ago 1.3.0 | ESM + CommonJS | Bundled | State management, React | |
| @zag-js/listbox Core logic for the listbox widget implemented as a state machine | 735.2k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | UI component libraries, State management |
| @zag-js/tour Core logic for the tour widget implemented as a state machine | 732.7k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | UI component libraries, State management |
| @zag-js/floating-panel Core logic for the floating-panel widget implemented as a state machine | 721.8k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | UI component libraries, State management |
| @zag-js/toggle Core logic for the toggle widget implemented as a state machine | 707.1k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | UI component libraries, State management |
| @pinia/testing Testing module for Pinia | 700.9k | - | - | - | 2 months ago 2.0.1 | ESM only | Bundled | State management, Vue |
| @zag-js/angle-slider Core logic for the angle-slider widget implemented as a state machine | 692.8k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | UI component libraries, State management |
| @zag-js/password-input Core logic for the password-input widget implemented as a state machine | 692.7k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | UI component libraries, State management |
| derive-valtio Derive util for Valtio | 677k | +53% | - | 2 years ago 0.2.0 | ESM + CommonJS | Bundled | State management | |
| @zag-js/scroll-area Core logic for the scroll-area widget implemented as a state machine | 676.8k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | UI component libraries, State management |
| @zag-js/async-list Core logic for the async-list widget implemented as a state machine | 665.9k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | UI component libraries, State management |
| @zag-js/marquee Core logic for the marquee widget implemented as a state machine | 665.1k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | UI component libraries, State management |
| @zag-js/image-cropper Core logic for the image-cropper widget implemented as a state machine | 647k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | UI component libraries, State management |
| @pinia/nuxt Nuxt Module for pinia | 639.9k | - | - | - | 1 month ago 1.0.2 | ESM only | Bundled | State management, Vue |
| @zag-js/navigation-menu Core logic for the navigation-menu widget implemented as a state machine | 639.6k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | UI component libraries, State management |
| @zag-js/drawer Core logic for the drawer widget implemented as a state machine | 598.3k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | UI component libraries, State management |
| @zag-js/cascade-select Core logic for the cascade-select widget implemented as a state machine | 593.7k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | UI component libraries, State management |
| logrocket JavaScript SDK for [LogRocket](https://logrocket.com/) | 580.1k | +80% | - | 8 days ago 12.4.0 | CommonJS | Bundled | State management | |
| mobx-utils Utility functions and common patterns for MobX | 577k | +146% | - | 1 year ago 6.1.1 | ESM + CommonJS | Bundled | State management, Utility libraries | |
| reduce-reducers Reduce multiple reducers into a single reducer | 560.6k | +8% | - | 7 years ago 1.0.4 | ESM + CommonJS | Bundled | State management | |
| redux-immutable redux-immutable is used to create an equivalent function of Redux combineReducers that works with Immutable.js state. | 540.6k | +12% | - | 9 years ago 4.0.0 | CommonJS | None | State management | |
| @zag-js/date-input Core logic for the date-input widget implemented as a state machine | 507.9k | - | - | - | 11 days ago 1.44.0 | ESM + CommonJS | Bundled | UI component libraries, State management |
| little-state-machine State management made super simple | 469.5k | +13% | - | 1 year ago 5.0.1 | ESM + CommonJS | Bundled | State management | |
| redux-actions Flux Standard Action utlities for Redux | 461.8k | +16% | - | 2 years ago 3.0.3 | ESM only | None | State management | |
| react-tracked State usage tracking with Proxies. Optimize re-renders for useState/useReducer, React Redux, Zustand and others. | 460.8k | +174% | - | 2 years ago 2.0.1 | ESM + CommonJS | Bundled | State management, React | |
| react-display-name utility to return a react components display name | 375.2k | +20% | - | 6 years ago 0.2.5 | CommonJS | Bundled | React, State management | |
| normalizr Normalizes and denormalizes JSON according to schema for Redux and Flux applications | 342.6k | +24% | - | 4 years ago 3.6.2 | ESM + CommonJS | Bundled | State management, Parsers and serialisers | |
| recoil Recoil - A state management library for React | 328.2k | -21% | - | 3 years ago 0.7.7 | ESM + CommonJS | Bundled | State management | |
| hygen The scalable code generator that saves you time. | 307.9k | +14% | - | 4 years ago 6.2.11 | CommonJS | Bundled | State management, React | |
| reactotron-core-client Grants Reactotron clients the ability to talk to a Reactotron server. | 279.7k | +11% | - | - 2.10.0 | ESM + CommonJS | Bundled | State management, React | |
| reactotron-core-contract Typescript contracts for websocket messages between server and clients | 266.2k | +22% | - | - 0.4.0 | ESM + CommonJS | Bundled | State management, React | |
| reactotron-react-native A development tool to explore, inspect, and diagnose your React Native apps. | 252.6k | +12% | - | - 5.3.1 | ESM + CommonJS | Bundled | React, State management | |
| constate Yet another React state management library that lets you work with local state and scale up to global state with ease | 217.5k | +19% | - | 3 months ago 4.0.0 | ESM only | Bundled | State management, React | |
| semver-store An extremely fast semver based store | 198.8k | -29% | - | 8 years ago 0.3.0 | CommonJS | None | State management | |
| typesafe-actions Typesafe Action Creators for Redux / Flux Architectures (in TypeScript) | 192.1k | +18% | - | 6 years ago 5.1.0 | ESM + CommonJS | Bundled | State management, TypeScript tooling | |
| @wordpress/data Data module for WordPress. | 180k | - | - | - | 2 days ago 10.56.0 | ESM + CommonJS | Bundled | State management |
| react-router-redux Ruthlessly simple bindings to keep react-router and redux in sync | 163.7k | -34% | - | 9 years ago 4.0.8 | CommonJS | None | React, State management | |
| object-path-immutable Modify deep object properties without modifying the original object (immutability). Works great with React and Redux. | 157.4k | +100% | - | 5 years ago 4.1.2 | ESM + CommonJS | Bundled | State management, React | |
| @genkit-ai/firebase Genkit AI framework plugin for Firebase including Firestore trace/state store and deployment helpers for Cloud Functions for Firebase. | 155.3k | - | - | - | 23 days ago 1.42.0 | ESM + CommonJS | Bundled | State management |
| mobx-state-tree Opinionated, transactional, MobX powered state container | 123.4k | +65% | - | 22 days ago 8.0.0 | ESM + CommonJS | Bundled | State management | |
| @stencil/store Store is a lightweight shared state library by the StencilJS core team. Implements a simple key/value map that efficiently re-renders components when necessary. | 111.1k | - | - | - | 1 month ago 2.2.4 | ESM + CommonJS | Bundled | State management |
| redux-saga-testing A no-brainer way of testing your Sagas | 109.9k | +424% | - | 4 years ago 2.0.2 | CommonJS | Bundled | Testing, State management |
12-month change compares the average of the last 4 weeks of downloads with the first 4 weeks of the 52-week series. Gzip size is for the whole package, as measured by Bundlephobia. "-" means the value has not been fetched.
- @zag-js/checkboxCore logic for the checkbox widget implemented as a state machine
- @zag-js/signature-padCore logic for the signature-pad widget implemented as a state machine
- @zag-js/stepsCore logic for the steps widget implemented as a state machine
- @zag-js/splitterCore logic for the splitter widget implemented as a state machine
- @zag-js/qr-codeCore logic for the qr-code widget implemented as a state machine
- @zag-js/editableCore logic for the editable widget implemented as a state machine
- @zag-js/clipboardCore logic for the clipboard widget implemented as a state machine
- @zag-js/timerCore logic for the timer widget implemented as a state machine
- mutativeA JavaScript library for efficient immutable updates
- @zag-js/listboxCore logic for the listbox widget implemented as a state machine
- @zag-js/tourCore logic for the tour widget implemented as a state machine
- @zag-js/floating-panelCore logic for the floating-panel widget implemented as a state machine
- @zag-js/toggleCore logic for the toggle widget implemented as a state machine
- @pinia/testingTesting module for Pinia
- @zag-js/angle-sliderCore logic for the angle-slider widget implemented as a state machine
- @zag-js/password-inputCore logic for the password-input widget implemented as a state machine
- derive-valtioDerive util for Valtio
- @zag-js/scroll-areaCore logic for the scroll-area widget implemented as a state machine
- @zag-js/async-listCore logic for the async-list widget implemented as a state machine
- @zag-js/marqueeCore logic for the marquee widget implemented as a state machine
- @zag-js/image-cropperCore logic for the image-cropper widget implemented as a state machine
- @pinia/nuxtNuxt Module for pinia
- @zag-js/navigation-menuCore logic for the navigation-menu widget implemented as a state machine
- @zag-js/drawerCore logic for the drawer widget implemented as a state machine
- @zag-js/cascade-selectCore logic for the cascade-select widget implemented as a state machine
- logrocketJavaScript SDK for [LogRocket](https://logrocket.com/)
- mobx-utilsUtility functions and common patterns for MobX
- reduce-reducersReduce multiple reducers into a single reducer
- redux-immutableredux-immutable is used to create an equivalent function of Redux combineReducers that works with Immutable.js state.
- @zag-js/date-inputCore logic for the date-input widget implemented as a state machine
- little-state-machineState management made super simple
- redux-actionsFlux Standard Action utlities for Redux
- react-trackedState usage tracking with Proxies. Optimize re-renders for useState/useReducer, React Redux, Zustand and others.
- react-display-nameutility to return a react components display name
- normalizrNormalizes and denormalizes JSON according to schema for Redux and Flux applications
- recoilRecoil - A state management library for React
- hygenThe scalable code generator that saves you time.
- reactotron-core-clientGrants Reactotron clients the ability to talk to a Reactotron server.
- reactotron-core-contractTypescript contracts for websocket messages between server and clients
- reactotron-react-nativeA development tool to explore, inspect, and diagnose your React Native apps.
- constateYet another React state management library that lets you work with local state and scale up to global state with ease
- semver-storeAn extremely fast semver based store
- typesafe-actionsTypesafe Action Creators for Redux / Flux Architectures (in TypeScript)
- @wordpress/dataData module for WordPress.
- react-router-reduxRuthlessly simple bindings to keep react-router and redux in sync
- object-path-immutableModify deep object properties without modifying the original object (immutability). Works great with React and Redux.
- @genkit-ai/firebaseGenkit AI framework plugin for Firebase including Firestore trace/state store and deployment helpers for Cloud Functions for Firebase.
- mobx-state-treeOpinionated, transactional, MobX powered state container
- @stencil/storeStore is a lightweight shared state library by the StencilJS core team. Implements a simple key/value map that efficiently re-renders components when necessary.
- redux-saga-testingA no-brainer way of testing your Sagas