• Stars
    star
    187
  • Rank 206,464 (Top 5 %)
  • Language
  • Created over 4 years ago
  • Updated almost 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

collection of state management lib

awesome-state

Collection of state management lib

bg

State management refers to the management of the state of one or more user interface controls such as text fields, OK buttons, radio buttons, etc. in a graphical user interface. In this user interface programming technique, the state of one UI control depends on the state of other UI controls. For example, a state managed UI control such as a button will be in the enabled state when input fields have valid input values and the button will be in the disabled state when the input fields are empty or have invalid values. As applications grow, this can end up becoming one of the most complex problems in user interface development.[1]

This is especially the case when the state of any particular message or form on the page depends on factors outside of the current page, or available throughout several pages. For example, consider a user who is logged in and sees the 'welcome' message on their first visit to any page, but not on subsequent page visits. Does each page manage the state of the user being logged in? That would create too much copy pasting and duplication of code. Instead, you can use a state management pattern for handling messages (this may also include handling error messages and informative messages, along with the described welcome message) and then call this to receive a message as it becomes available.

cross framework

  • redux Predictable state container for JavaScript apps
  • mobx Simple, scalable state management.
  • mobx-keystone A MobX powered state management solution based on data trees with first class support for TypeScript, support for snapshots, patches and much more
  • akita 🚀 State Management Tailored-Made for JS Applications
  • effector The state manager ☄️
  • usm 🏖A concise & flexible state model for Redux/MobX/Vuex, etc.
  • storeon 🌩 A tiny (167 bytes) event-based Redux-like state manager for React, Preact, Angular, Vue, and Svelte
  • xsm State Management made eXtraordinarily simple and effective for Angular, React, and Vue
  • xoid ⚛️ Scalable, fine-grained, and minimal state-management library for React and vanilla JavaScript

react

  • recoil A state management library for React.
  • eventrix Scaling and predictable JS library for state managing and centralizing application global state.
  • flux Application Architecture for Building User Interfaces
  • reflux A simple library for uni-directional dataflow application architecture with React extensions inspired by Flux
  • react-redux Official React bindings for Redux.
  • mobx-react Official React bindings for Mobx
  • concent State management tailored for react, it is simple、predictable、progressive and efficient.
  • rematch REmatch, a complete binary diffing framework that is free and strives to be open source and community driven.
  • constate React Context + State
  • unstated State so simple, it goes without saying
  • zustand 🐻 Bear necessities for state management in React
  • easy-peasy Vegetarian friendly state for React
  • react-easy-state Simple React state management. Made with ❤️ and ES6 Proxies.
  • redux-observable RxJS middleware for action side effects in Redux using "Epics"
  • react-automata A state machine abstraction for React
  • dva Lightweight front-end framework based on redux, redux-saga and react-router.
  • react-copy-write ✍️ Immutable state with a mutable API
  • unistore 🌶 350b / 650b state container with component actions for Preact & React
  • kea Production Ready State Management for React
  • undux ⚡️ Dead simple state for React. Now with Hooks support.
  • moreartyjs centralized state management for React in pure JavaScript
  • Hookstate The simple but very powerful and incredibly fast state management for React that is based on hooks
  • hox The next-generation state manager for React.
  • use-persisted-state A custom React Hook that provides a multi-instance, multi-tab/browser shared and persistent state.
  • marty A Javascript library for state management in React applications
  • TNG-Hooks Provides React-inspired 'hooks' like useState(..) for stand-alone functions
  • react-hooks-global-state
  • react-hooks-global-state Simple global state for React with Hooks API
  • redux-arena Bundling reducers, actions, saga and react-component when using Redux
  • dob-react React bindings for dob
  • doux Simple reactivity system with composition API.
  • react-tracked Simple and fast global state with React Context. Eliminate unnecessary re-renders without hassle.
  • icestore 🌩 Simple and friendly state for React
  • overmind Overmind - Frictionless state management
  • outstated Simple hooks-based state management for React
  • pure-store A tiny immutable store with type safety.
  • react-broadcast Reliably communicate state changes to deeply nested React elements
  • react-nano-state Fast state that can be shared across components outside of the React tree
  • react-sweet-state Shared state management solution for React
  • stamen A React state management library based on Hooks
  • rex-state The simplest state management tool for React
  • statux ⚛️ A minimal state management library for React with Hooks and immutable state
  • reworm 🍫 the simplest way to manage state
  • remx Opinionated mobx
  • vuex-redux Make Redux as simple as Vuex
  • linkstate Bind events to state. Works with Preact and React.
  • statty A tiny and unobtrusive state management library for React and Preact apps
  • freactal Clean and robust state management for React and React-like libs.
  • react-3ducks Simple state management solution for React
  • teaful Tiny, easy and powerful React state management

vue

  • pinia The Vue Store that you will enjoy using.
  • vuex Centralized State Management for Vue.js.
  • mobx-vue Vue bindings for Mobx
  • vuet 允许你定义飙车过程的集中式状态管理模式
  • VueFlux ♻️ Unidirectional State Management Architecture for Swift - Inspired by Vuex and Flux
  • vue-rx 👁️ RxJS integration for Vue.js.
  • vuex-observable Consume Vuex actions as Observables using RxJS 5
  • vue-reactive-store A VueX alternative : declarative + reactive + centralized way to structure your data store. Inspired by VueX and Vue.js . Compatible with vue-devtools.
  • vuex-stores 🗄 Store objects for Vuex, a simple and more fluid API for state-management.
  • Vuex-Alt An alternative approach to Vuex helpers for accessing state, getters and actions that doesn't rely on string constants.
  • vue-entity-adapter Package to maintain entities in Vuex.
  • vc-state 像 React.useContext 一样创建作用域上下文. Easily to compose scoped state in Vue.js

mini-programe

  • westore 微信小程序解决方案 - 1KB javascript 覆盖状态管理、跨页通讯、插件开发和云数据库开发
  • minii State management for Wechat Mini App
  • herculex Predictable state container for alipay mini-program inspired by vuex, redux, immutableJS,elm,rxjs
  • mp-store 轻量级的小程序状态管理库
  • wxMiniStore一个基于微信小程序的mini全局状态管理库
  • mobx-wxapp 在小程序中使用mobx
  • mobx-miniprogram-bindings 小程序的 MobX 绑定辅助库
  • Wepy-Redux 微信小程序wepy框架接入 Redux 状态管理
  • weapp_expressTime微信小程序之物流状态时间轴简单模板样式
  • mp-store 轻量级的小程序状态管理库
  • wxappStore 微信小程序全局状态管理,并提供Vuex的开发体验
  • wxMiniStore 一个基于微信小程序的mini全局状态管理库

angular

  • ng-redux Angular bindings for Redux.
  • redux-rx RxJS utilities for Redux.
  • ngxs 🚀 NGXS - State Management for Angular
  • mobx-angular MobX connector to Angular
  • RxEmitter RxEmitter combines the characteristics of Rxjs and eventBus
  • angular-model Simple state management with minimalist API, one way data flow, multiple model support and immutable data exposed as RxJS Observable.
  • ngx-model Angular Model. Simple state management with minimalistic API, one way data flow, multiple model support and immutable data exposed as RxJS Observable.
  • tinystate A tiny, yet powerful state management library for Angular
  • ng-simple-state Simplex state management based on Rxjs and service

other

  • fish-redux An assembled flutter application framework.
  • RxAndroid Reactive Extensions for Android
  • flutter-provide A simple framework for state management in Flutter.
  • bloc A predictable state management library that helps implement the BLoC design pattern
  • mobx.dart MobX for the Dart language. Hassle-free, reactive state-management for your Dart and Flutter apps.
  • multiple-counters-flutter Flutter State Management [ setState ❖ StreamBuilder ❖ scoped_model ❖ redux ]
  • flutter-native-state Flutter plugin to help restoring state after the app process was killed
  • easy The easiest state manager for Flutter.
  • Reflow A unidirectional data flow framework for Objective-C inspired by Flux, Redux and Vue
  • rebloc A state management library for Flutter that combines aspects of Redux and BLoC.
  • OneWay A Swift library for state management with unidirectional data flow.

More Repositories

1

TNT-Weekly

🙈 🙉 🙊 每周为您推荐国内外前端领域最新的优秀文章以及行业进展
5,158
star
2

FFCreator

A fast video processing library based on node.js (一个基于node.js的高速视频制作库)
JavaScript
2,816
star
3

awesome-blackmagic

🎭 ♠♥奇技淫巧 💠黑魔法大集合♦♣ 👺
1,027
star
4

wp2vite

一个让webpack项目支持vite的前端项目的转换工具。A front-end project automatic conversion tool。
JavaScript
709
star
5

shida

《视搭》是一个视频可视化搭建项目。您可以通过简单的拖拽方式快速生产一个短视频,使用方式就像易企秀或Maka 等 h5 搭建工具一样的简单,仅抛砖引玉希望您喜欢。
Vue
569
star
6

FEDiagram

图说前端>>收集各种前端技术图谱 🚕🚖🚗🚚🚛🚜
440
star
7

csijs

CSI.JS是一个特别的前端日志系统,帮你快速重建犯罪现场。
JavaScript
275
star
8

bbo

bbo is a utility library of zero dependencies for javascript. 🍖🌭🍔
JavaScript
275
star
9

vue3-infinite-list

一个支持百万数量级的Vue3无限滚动列表组件
TypeScript
224
star
10

limu

High performance immutable lib alternative to immer with the same api, based on shallow copy on read and mark modified on write mechanism.
JavaScript
217
star
11

transx

一个小巧玲珑的 vue 组件切换动画库, 支持 20 几种动画切换方式
JavaScript
183
star
12

clean-state

🐻 A pure and compact state manager, using React-hooks native implementation, automatically connect the module organization architecture. 🍋
TypeScript
120
star
13

tntweb-admin

react admin management system template
CSS
38
star
14

awesome-ffcreator

awesome ffcreator projects
30
star
15

jscalpel

A small feature library that makes it easier to manipulate objects
JavaScript
27
star
16

manage-table

对antd的table进行扩展,支持配置展示列
JavaScript
13
star
17

data-filler

make your backend response data shape reliable, with data-filler you can stay away from optional chain
JavaScript
2
star
18

html3canvas

html convert to canvas
TypeScript
1
star
19

hel

a solution of using micro module for frontend development
TypeScript
1
star