Redux - Predictable state container for JavaScript apps

  •        4047

Redux is a predictable state container for JavaScript apps. It helps you write applications that behave consistently, run in different environments (client, server, and native), and are easy to test. On top of that, it provides a great developer experience, such as live code editing combined with a time traveling debugger.

Redux is most useful in cases when:

  • You have large amounts of application state that are needed in many places in the app
  • The app state is updated frequently
  • The logic to update that state may be complex
  • The app has a medium or large-sized codebase, and might be worked on by many people
  • You need to see how that state is being updated over time

http://redux.js.org
https://github.com/reduxjs/redux

Tags
Implementation
License
Platform

   




Related Projects

redux - Predictable state container for JavaScript apps

  •    Javascript

It helps you write applications that behave consistently, run in different environments (client, server, and native), and are easy to test. On top of that, it provides a great developer experience, such as live code editing combined with a time traveling debugger.You can use Redux together with React, or with any other view library. It is tiny (2kB, including dependencies).

redux-devtools - DevTools for Redux with hot reloading, action replay, and customizable UI

  •    Javascript

Note that the implemention in this repository is different from Redux DevTools Extension. Please refer to the latter for browser extension. Redux DevTools is a development time package that provides power-ups for your Redux development workflow. Be careful to strip its code in production (see walkthrough for instructions)! To use Redux DevTools, you need to choose a “monitor”—a React component that will serve as a UI for the DevTools. Different tasks and workflows require different UIs, so Redux DevTools is built to be flexible in this regard. We recommend using LogMonitor for inspecting the state and time travel, and wrap it in a DockMonitor to quickly move it across the screen. That said, when you’re comfortable rolling up your own setup, feel free to do this, and share it with us.

dutier - The immutable, async and hybrid state management solution for Javascript applications.

  •    Javascript

The 2kb immutable, async and universal state management solution for Javascript applications. It evolves on the ideas of Redux.

eslint-plugin-immutable - ESLint plugin to disable all mutation in JavaScript.

  •    Javascript

This is an ESLint plugin to disable all mutation in JavaScript. Think this is a bit too restrictive? Well if you're using Redux and React, there isn't much reason for your code to be mutating anything. Redux maintains a mutable pointer to your immutable application state, and React manages your DOM state. Your components should be stateless functions, translating data into Virtual DOM objects whenever Redux emits a new state. These ESLint rules explicitly prohibit mutation, effectively forcing you to write code very similar to Elm in React. There's no reason to use let in a Redux/React application, because all your state is managed by either Redux or React. Use const instead, and avoid state bugs altogether.


concent - State management that tailored for react, it is simple, predictable, progressive and efficient

  •    Javascript

⚡️ State management that tailored for react, it is simple, predictable, progressive and efficient. Concent encourages simplicity. It saves you the hassle of creating boilerplate code and gives powerful tools with a moderate learning curve, suitable for both experienced and inexperienced developers alike.

redux-machine - A tiny library (12 lines) for creating state machines in Redux apps

  •    Javascript

If you are using Immutable JS in your stores, see redux-machine-immutable. redux-machine internally uses Object.assign, which is an ES2015 feature. If you need to support older browsers, you can use a polyfill such as core-js.

akita - 🚀 State Management Tailored-Made for JS Applications

  •    TypeScript

Whether it be Angular, React, Vue, Web Components or plain old vanilla JS, Akita can do the heavy lifting and serve as a useful tool for maintaining clean, boilerplate-free, and scalable applications. Akita is a state management pattern, built on top of RxJS, which takes the idea of multiple data stores from Flux and the immutable updates from Redux, along with the concept of streaming data, to create the Observable Data Stores model.

redux-react-local - local component state via redux

  •    Javascript

Add the supplied reducer to a key local on your redux store. However, because 'views' don't have global references / identities ala Backbone etc, communicating between these components can get cumbersome 2; we then resort to building some form of messaging system external to these components - callbacks, pubsub channels, flux stores, observable event chains, etc. The smart ones use context to expose these systems to a particular render tree, avoiding 'global' state, but still getting a similar model.

redux-immutable - redux-immutable is used to create an equivalent function of Redux combineReducers that works with Immutable

  •    Javascript

redux-immutable is used to create an equivalent function of Redux combineReducers that works with Immutable.js state. When Redux createStore reducer is created using redux-immutable then initialState must be an instance of Immutable.Collection.

polymer-redux - Polymer bindings for Redux.

  •    Javascript

Polymer bindings for Redux. Bind store state to properties and dispatch actions from within Polymer Elements. Polymer is a modern library for creating Web Components within an application. Redux is a state container for managing predictable data. Binding the two libraries together allows developers to create powerful and complex applications faster and simpler. This approach allows the components you build with Polymer to be more focused on functionality than the applications state.

redux-storage - Persistence layer for redux with flexible backends

  •    Javascript

Save and load the Redux state with ease. And you need to install at least one redux-storage-engine, as redux-storage is only the "management core".

redux-ui - Easy UI state management for react redux

  •    Javascript

This is powerful. Each component is reusable and can still affect UI state for parent components. Step 3: In each child component use the basic @ui() decorator; it will automatically read and write UI state to the parent component's UI key.

redux-responsive - Manage the responsive state of your application using a redux reducer

  •    Javascript

A redux reducer for managing the responsive state of your application. redux-responsive does not require that you use React as your view library. However, since that is what is commonly used alongside redux, this documentation employs common React patterns.

fluorine - [UNMAINTAINED] Reactive state and side effect management for React using a single stream of actions

  •    Javascript

Flexible state and side effect manager using RxJS for React. Fluorine provides you with easy, reactive state and side effect management, accumulating stores from streams of actions and side effects.

reductor - Redux for Android. Predictable state container library for Java/Android

  •    Java

Redux inspired predictable state container library for Java/Android. Key point of this implementation was to keep the original concept of Redux to reuse most of existing approaches but provide nice Java API and preserve types as much as possible.

ngrx-actions - ⚡️ Actions and Reducer Utilities for NGRX

  •    TypeScript

Actions/reducer utility for NGRX. It provides a handful of functions to make NGRX/Redux more Angular-tastic. Inspired by redux-act and redux-actions for Redux.

react-cursor - Immutable state for React.js

  •    Javascript

Cursors are a tool for working with recursive or deeply nested data, immutably. react-cursor is a javascript port of an abstraction that I first saw in ClojureScript. This implementation is decoupled from any rendering library and is very small. Cursors are useful in UI programming, because UIs are tree shaped and naturally have tree-shaped state. Cursors let your app hold all its state in one place at the root of the UI tree; thus the root is stateful, and all downtree views are stateless.

redux-form - A Higher Order Component using react-redux to keep form state in a Redux store

  •    Javascript

redux-form works with React Redux to enable an html form in React to use Redux to store all of its state. You can play around with redux-form in these sandbox versions of the Examples.

redux-connect - Provides decorator for resolving async props in react-router, extremely useful for handling server-side rendering in React

  •    Javascript

How do you usually request data and store it to redux state? You create actions that do async jobs to load data, create reducer to save this data to redux state, then connect data to your component or container. Usually it's very similar routine tasks.






We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.