Data Manipulation and Normalization
An efficient memoizer for functions that only receive immutable arguments. Ideal for Redux and similar environments. Dependency free!
Normalizes deeply nested JSON API responses according to a schema, producing flatter and unduplicated state.
Denormalizr takes an entity normalized by normalizr, and returns its complete tree including all the referred entities.
Denormalizer for normalizr using immutable data
Denormalize your immutable Redux store
Super lightweight environment that permits to define relations between objects when receiving data from normalized api's
Variants system for Redux (with optional React helpers)
Fetches ajax responses suitable for dispatching in a redux action
Normalizes JSONAPI for use in Redux or similar systems.
A helper function to query redux state for entities
Creates recursively memoized deep merge functions for use with react-redux connect
Utility to normalize JSON API data for redux applications
Builds complex JS object from normalized redux store. Works best with json-api-normalizer.
denormalize-with-state takes data denormalized by denormalizr and merges in extra state.
Denormalize JSON API responses for Redux applications
Normalizes and denormalizes JSON according to relational schema, inspired by Normalizr
Simple “selector” library for Redux inspired by getters in NuclearJS. Can compute derived data efficiently using memoization and composition.
A simple memoize function for reselect which performs a callback everytime the result changes.
Helpers for reusable combinations of selectors, actions and reducers in redux.
Reselect-inspired utility/selector functions
Selectors for mapping over collections
Proof of concept for using GraphQL to select data from a Redux store.
This library allows you to use GraphQL to query your Redux store
Enhance Reselect selectors by wrapping createSelector function and returning a memoized collection of selectors indexed with the cache key returned by a custom resolver function. Useful to reduce selectors recalculation when the same selector is repeatedly called with one/few different arguments.
selectorator is an abstraction API for creating selectors via reselect with less boilerplate code.
A utility to help with the ordering of selector definitions
Memoized selectors for Redux and other immutable object derivation. Differs from Reselect by encouraging you to consider the derivation first-and-foremost without requiring you to build up the individual dependencies ahead of time.
Memoized selector library for any immutable data structure (such as a redux immutable store). This library serves as a smaller, faster alternative to reselect AND re-reselect.
Syntactic sugar for redux selectors:
Provides a genSelectState utility to improve selector caching behavior, and a shouldUpdate function for simple
Combine selectors from state to one set of selectors. Useful with redux and combineReducer or combine-section-reducer
Utility function for combining selectors when working with redux. Much like combineReducers it helps for defining selector functions within the reducers.
Shorthand for react-redux’s mapStateToProps. Need some props? Just select 'em!
Provides an additional layer of getters between the store and components. The getter returns data from the store if they are there, otherwise it returns stub and invokes fetch action.
A micro library for immutable and safe state access
Memoized selector library, meant to improve reselect usage to be more resilient and concise. By using the new way to construct selectors, you should be able to write selectors that are easier to combine with.
Transducer utilities for Redux.
Recompose is a React utility belt for function components and higher-order components. Think of it like lodash for React.
RxJS utilities for Redux.
Utilities for attaching Bacon.js to Redux
Compose React components with a functional api.
Redux Consumer Toolkit
Implements several functions that are useful for combining, composing, and altering reducers and selectors (consumers). Each of this functions returns a memoized consumer, similar to reselect, so data isn't re-computed unnecessarily. The inspiration for this library was fantasyland-redux, only instead of basing it off of the fantasyland specification it is based off of the static-land specification.
Like compose, but with rest params also being passed in. This is particularly useful in redux reducers, for example, when you want to apply multiple modifiers to the state, using the same action object.
Utilities for composing and piping reducers, selectors, and middleware