Skip to content
JS
Package category

State management

Application state containers and stores for UI frameworks.

415 packages5 comparisons

Packages compared

415 packages
PackageWeekly downloads12-month change52 weeksGzipLast releaseModuleTypesCategories
@zag-js/checkbox
Core logic for the checkbox widget implemented as a state machine
787.1k---11 days ago
1.44.0
ESM + CommonJSBundledUI 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 + CommonJSBundledUI 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 + CommonJSBundledUI 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 + CommonJSBundledUI 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 + CommonJSBundledUI 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 + CommonJSBundledUI 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 + CommonJSBundledDOM 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 + CommonJSBundledUI component libraries, State management
mutative
A JavaScript library for efficient immutable updates
755.2k+581%-1 year ago
1.3.0
ESM + CommonJSBundledState 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 + CommonJSBundledUI 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 + CommonJSBundledUI 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 + CommonJSBundledUI 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 + CommonJSBundledUI component libraries, State management
@pinia/testing
Testing module for Pinia
700.9k---2 months ago
2.0.1
ESM onlyBundledState 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 + CommonJSBundledUI 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 + CommonJSBundledUI component libraries, State management
derive-valtio
Derive util for Valtio
677k+53%-2 years ago
0.2.0
ESM + CommonJSBundledState 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 + CommonJSBundledUI 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 + CommonJSBundledUI 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 + CommonJSBundledUI 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 + CommonJSBundledUI component libraries, State management
@pinia/nuxt
Nuxt Module for pinia
639.9k---1 month ago
1.0.2
ESM onlyBundledState 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 + CommonJSBundledUI 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 + CommonJSBundledUI 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 + CommonJSBundledUI component libraries, State management
logrocket
JavaScript SDK for [LogRocket](https://logrocket.com/)
580.1k+80%-8 days ago
12.4.0
CommonJSBundledState management
mobx-utils
Utility functions and common patterns for MobX
577k+146%-1 year ago
6.1.1
ESM + CommonJSBundledState management, Utility libraries
reduce-reducers
Reduce multiple reducers into a single reducer
560.6k+8%-7 years ago
1.0.4
ESM + CommonJSBundledState 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
CommonJSNoneState 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 + CommonJSBundledUI component libraries, State management
little-state-machine
State management made super simple
469.5k+13%-1 year ago
5.0.1
ESM + CommonJSBundledState management
redux-actions
Flux Standard Action utlities for Redux
461.8k+16%-2 years ago
3.0.3
ESM onlyNoneState 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 + CommonJSBundledState management, React
react-display-name
utility to return a react components display name
375.2k+20%-6 years ago
0.2.5
CommonJSBundledReact, 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 + CommonJSBundledState management, Parsers and serialisers
recoil
Recoil - A state management library for React
328.2k-21%-3 years ago
0.7.7
ESM + CommonJSBundledState management
hygen
The scalable code generator that saves you time.
307.9k+14%-4 years ago
6.2.11
CommonJSBundledState management, React
reactotron-core-client
Grants Reactotron clients the ability to talk to a Reactotron server.
279.7k+11%--
2.10.0
ESM + CommonJSBundledState management, React
reactotron-core-contract
Typescript contracts for websocket messages between server and clients
266.2k+22%--
0.4.0
ESM + CommonJSBundledState management, React
reactotron-react-native
A development tool to explore, inspect, and diagnose your React Native apps.
252.6k+12%--
5.3.1
ESM + CommonJSBundledReact, 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 onlyBundledState management, React
semver-store
An extremely fast semver based store
198.8k-29%-8 years ago
0.3.0
CommonJSNoneState management
typesafe-actions
Typesafe Action Creators for Redux / Flux Architectures (in TypeScript)
192.1k+18%-6 years ago
5.1.0
ESM + CommonJSBundledState management, TypeScript tooling
@wordpress/data
Data module for WordPress.
180k---2 days ago
10.56.0
ESM + CommonJSBundledState management
react-router-redux
Ruthlessly simple bindings to keep react-router and redux in sync
163.7k-34%-9 years ago
4.0.8
CommonJSNoneReact, 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 + CommonJSBundledState 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 + CommonJSBundledState management
mobx-state-tree
Opinionated, transactional, MobX powered state container
123.4k+65%-22 days ago
8.0.0
ESM + CommonJSBundledState 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 + CommonJSBundledState management
redux-saga-testing
A no-brainer way of testing your Sagas
109.9k+424%-4 years ago
2.0.2
CommonJSBundledTesting, 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