233 lines
19 KiB
Plaintext
233 lines
19 KiB
Plaintext
[38;5;12m [39m[38;2;255;187;0m[1m[4mRedux Libraries & Learning Material [0m[38;5;14m[1m[4m![0m[38;2;255;187;0m[1m[4mAwesome[0m[38;5;14m[1m[4m (https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)[0m[38;2;255;187;0m[1m[4m (https://github.com/sindresorhus/awesome)[0m
|
||
|
||
[38;5;12m (http://redux.js.org/)[39m
|
||
|
||
[38;5;11m[1m▐[0m[38;5;12m [39m[38;5;12mRedux is a state container for JavaScript apps.[39m
|
||
|
||
[38;5;12m - Official website: [39m[48;5;235m[38;5;249m[1mdevarchy.com/redux[0m[38;5;12m (https://devarchy.com/redux)[39m
|
||
[38;5;12m - Use devarchy to add a library to the catalog[39m
|
||
[38;5;12m [39m
|
||
[38;5;12m [39m
|
||
|
||
[38;2;255;187;0m[4mContents[0m
|
||
[38;5;12m- [39m[38;5;14m[1mCode Architecture[0m[38;5;12m (#code-architecture)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mUtilities[0m[38;5;12m (#utilities)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCode Style[0m[38;5;12m (#code-style)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mDev tools / Inspection tools[0m[38;5;12m (#dev-tools--inspection-tools)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mReact Integration[0m[38;5;12m (#react-integration)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mOther Integrations[0m[38;5;12m (#other-integrations)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mBoilerplate[0m[38;5;12m (#boilerplate)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mMiscellaneous[0m[38;5;12m (#miscellaneous)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mLearning Material[0m[38;5;12m (#learning-material)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCommunity[0m[38;5;12m (#community)[39m
|
||
|
||
|
||
|
||
[38;2;255;187;0m[4mCode Architecture[0m
|
||
|
||
[48;2;30;30;40m[38;5;13m[3mAims to improve the overall structure of the source code. Makes reasoning about the code easier.[0m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mredux-schema[0m[38;5;12m (https://github.com/ddsol/redux-schema) - Automatic actions, reducers and validation for Redux.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-tcomb[0m[38;5;12m (https://github.com/gcanti/redux-tcomb) - Immutable and type-checked state and actions for Redux.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-action-tree[0m[38;5;12m (https://github.com/cerebral/redux-action-tree) - The Cerebral signals running with Redux.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-elm[0m[38;5;12m (https://github.com/salsita/redux-elm) - The Elm Architecture in JavaScript.[39m
|
||
|
||
|
||
[38;2;255;187;0m[4mUtilities[0m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mredux-orm[0m[38;5;12m (https://github.com/tommikaikkonen/redux-orm) - Small, simple and immutable ORM to manage relational data in your Redux store.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-api-middleware[0m[38;5;12m (https://github.com/agraboso/redux-api-middleware) - Redux middleware for calling an API.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-ignore[0m[38;5;12m (https://github.com/omnidan/redux-ignore) - Higher-order reducer to ignore Redux actions.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-modifiers[0m[38;5;12m (https://github.com/calvinfroedge/redux-modifiers) - Collection of generic functions for writing Redux reducers to operate on various data structures.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mrereduce[0m[38;5;12m (https://github.com/slorber/rereduce) - Reducer library for Redux.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-search[0m[38;5;12m (https://github.com/treasure-data/redux-search) - Redux bindings for client-side search.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-logger[0m[38;5;12m (https://github.com/evgenyrodionov/redux-logger) - Logger middleware for Redux.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-immutable[0m[38;5;12m (https://github.com/gajus/redux-immutable) - Redux-immutable is used to create an equivalent function of Redux combineReducers that works with Immutable.js state.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mreselect[0m[38;5;12m (https://github.com/reactjs/reselect) - Selector library for Redux.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-requests[0m[38;5;12m (https://github.com/idolize/redux-requests) - Manages in-flight requests with a Redux reducer to avoid issuing duplicate requests.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-undo[0m[38;5;12m (https://github.com/omnidan/redux-undo) - Higher order reducer to add undo/redo functionality to Redux state containers.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-bug-reporter[0m[38;5;12m (https://github.com/dtschust/redux-bug-reporter) - Bug reporter and bug playback tool for Redux.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-transducers[0m[38;5;12m (https://github.com/acdlite/redux-transducers) - Transducer utilities for Redux.[39m
|
||
|
||
|
||
[38;2;255;187;0m[4mStore Persistence[0m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mredux-storage[0m[38;5;12m (https://github.com/michaelcontento/redux-storage) - Persistence layer for Redux with flexible backends.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-persist[0m[38;5;12m (https://github.com/rt2zz/redux-persist) - Persist and rehydrate a Redux store.[39m
|
||
|
||
|
||
[38;2;255;187;0m[4mSide Effects[0m
|
||
|
||
[48;2;30;30;40m[38;5;13m[3mSide Effects / Asynchronous Actions[0m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mredux-saga[0m[38;5;12m (https://github.com/yelouafi/redux-saga) - Alternative side effect model for Redux apps.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-promise-middleware[0m[38;5;12m (https://github.com/pburtchaell/redux-promise-middleware) - Redux middleware for resolving and rejecting promises with conditional optimistic updates.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-effects[0m[38;5;12m (https://github.com/redux-effects/redux-effects) - You write pure functions, redux-effects handles the rest.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-thunk[0m[38;5;12m (https://github.com/gaearon/redux-thunk) - Thunk middleware for Redux.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-connect[0m[38;5;12m (https://github.com/makeomatic/redux-connect) - Provides decorator for resolving async props in react-router, extremely useful for handling server-side rendering in React.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-loop[0m[38;5;12m (https://github.com/redux-loop/redux-loop) - Port of elm-effects and the Elm Architecture to Redux that allows you to sequence your effects naturally and purely by returning them from your reducers.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-side-effects[0m[38;5;12m (https://github.com/salsita/redux-side-effects) - Redux toolset for keeping all the side effects inside your reducers while maintaining their purity.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-logic[0m[38;5;12m (https://github.com/jeffbski/redux-logic) - Redux middleware for organizing business logic and action side effects.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-observable[0m[38;5;12m (https://github.com/redux-observable/redux-observable) - RxJS middleware for action side effects in Redux using "Epics".[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-ship[0m[38;5;12m (https://github.com/clarus/redux-ship) - Composable, testable and typable side effects.[39m
|
||
|
||
|
||
[38;2;255;187;0m[4mCode Style[0m
|
||
|
||
[48;2;30;30;40m[38;5;13m[3mAims to make parts of the source code easier to read/write.[0m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mredux-act[0m[38;5;12m (https://github.com/pauldijou/redux-act) - Opinionated lib to create actions and reducers for Redux.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-crud[0m[38;5;12m (https://github.com/Versent/redux-crud) - Set of standard actions and reducers for Redux CRUD Applications.[39m
|
||
|
||
|
||
[38;2;255;187;0m[4mDev tools / Inspection tools[0m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mredux-devtools-inspector[0m[38;5;12m (https://github.com/alexkuz/redux-devtools-inspector) - Another Redux DevTools Monitor.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-diff-logger[0m[38;5;12m (https://github.com/fcomb/redux-diff-logger) - Diff logger between states for Redux.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-devtools-chart-monitor[0m[38;5;12m (https://github.com/romseguy/redux-devtools-chart-monitor) - Chart monitor for Redux DevTools.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-devtools[0m[38;5;12m (https://github.com/gaearon/redux-devtools) - DevTools for Redux with hot reloading, action replay, and customizable UI.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-devtools-dispatch[0m[38;5;12m (https://github.com/YoruNoHikage/redux-devtools-dispatch) - Dispatch your actions manually to test if your app Reacts well.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-devtools-dock-monitor[0m[38;5;12m (https://github.com/gaearon/redux-devtools-dock-monitor) - Resizable and movable dock for Redux DevTools monitors.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-devtools-filterable-log-monitor[0m[38;5;12m (https://github.com/bvaughn/redux-devtools-filterable-log-monitor) - Filterable tree view monitor for Redux DevTools.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-devtools-log-monitor[0m[38;5;12m (https://github.com/gaearon/redux-devtools-log-monitor) - The default monitor for Redux DevTools with a tree view.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mremote-redux-devtools[0m[38;5;12m (https://github.com/zalmoxisus/remote-redux-devtools) - Redux DevTools remotely.[39m
|
||
|
||
|
||
[38;2;255;187;0m[4mReact Integration[0m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mredux-test-recorder[0m[38;5;12m (https://github.com/conorhastings/redux-test-recorder) - Redux middleware to automatically generate tests for reducers through ui interaction.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mreact-redux[0m[38;5;12m (https://github.com/reactjs/react-redux) - Official React bindings for Redux.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mreact-easy-universal[0m[38;5;12m (https://github.com/keystonejs/react-easy-universal) - Universal Routing & Rendering with React & Redux was too hard. Now it's easy.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-form-material-ui[0m[38;5;12m (https://github.com/erikras/redux-form-material-ui) - Set of wrapper components to facilitate using Material UI with Redux Form.[39m
|
||
|
||
|
||
[38;2;255;187;0m[4mRouting[0m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mredux-async-connect[0m[38;5;12m (https://github.com/Rezonans/redux-async-connect) - It allows you to request async data, store them in Redux state and connect them to your React component.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-tiny-router[0m[38;5;12m (https://github.com/Agamennon/redux-tiny-router) - Router made for Redux and made for universal apps. Stop using the router as a controller, it's just state.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-router[0m[38;5;12m (https://github.com/acdlite/redux-router) - Redux bindings for React Router – keep your router state inside your Redux store.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mreact-router-redux[0m[38;5;12m (https://github.com/reactjs/react-router-redux) - Ruthlessly simple bindings to keep react-router and Redux in sync.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mground-control[0m[38;5;12m (https://github.com/raisemarketplace/ground-control) - Scalable reducer management & powerful data fetching for React Router & Redux.[39m
|
||
|
||
|
||
[38;2;255;187;0m[4mForms[0m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mredux-form[0m[38;5;12m (https://github.com/erikras/redux-form) - Higher Order Component using react-redux to keep form state in a Redux store.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mreact-redux-form[0m[38;5;12m (https://github.com/davidkpiano/react-redux-form) - Create forms easily in React with Redux.[39m
|
||
|
||
|
||
[38;2;255;187;0m[4mComponent State[0m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mredux-react-local[0m[38;5;12m (https://github.com/threepointone/redux-react-local) - Local component state via Redux.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-ui[0m[38;5;12m (https://github.com/tonyhb/redux-ui) - Easy UI state management for React Redux.[39m
|
||
|
||
|
||
[38;2;255;187;0m[4mOther Integrations[0m
|
||
|
||
|
||
[38;2;255;187;0m[4mFlux[0m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mredux-actions[0m[38;5;12m (https://github.com/acdlite/redux-actions) - Flux Standard Action utilities for Redux.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-promise[0m[38;5;12m (https://github.com/acdlite/redux-promise) - FSA-compliant promise middleware for Redux.[39m
|
||
|
||
|
||
[38;2;255;187;0m[4mBackbone[0m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mbackbone-redux[0m[38;5;12m (https://github.com/redbooth/backbone-redux) - Easy way to keep your backbone collections and Redux store in sync.[39m
|
||
|
||
|
||
[38;2;255;187;0m[4mFalcor[0m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mredux-falcor[0m[38;5;12m (https://github.com/ekosz/redux-falcor) - Connect your Redux front-end to your falcor back-end.[39m
|
||
|
||
|
||
[38;2;255;187;0m[4mRxJS[0m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mredux-observable[0m[38;5;12m (https://github.com/redux-observable/redux-observable) - RxJS middleware for action side effects in Redux using "Epics".[39m
|
||
[38;5;12m - [39m[38;5;14m[1mrx-redux[0m[38;5;12m (https://github.com/jas-chen/rx-redux) - Reimplementation of Redux using RxJS.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredux-rx[0m[38;5;12m (https://github.com/acdlite/redux-rx) - RxJS utilities for Redux.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mredurx[0m[38;5;12m (https://github.com/shiftyp/redurx) - Redux'ish Functional State Management using RxJS.[39m
|
||
|
||
|
||
[38;2;255;187;0m[4mElectron[0m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mredux-electron-store[0m[38;5;12m (https://github.com/samiskin/redux-electron-store) - Redux store enhancer that allows automatic synchronization between electron processes.[39m
|
||
|
||
|
||
[38;2;255;187;0m[4mDeku[0m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mdeku-redux[0m[38;5;12m (https://github.com/troch/deku-redux) - Bindings for Redux in deku < v2.[39m
|
||
|
||
|
||
[38;2;255;187;0m[4mOther[0m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mredux-rollbar-middleware[0m[38;5;12m (https://github.com/netguru/redux-rollbar-middleware) - Redux middleware that wraps exceptions in actions and sends them to Rollbar with current state.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mkasia[0m[38;5;12m (https://github.com/outlandishideas/kasia) - React Redux toolset for the WordPress API.[39m
|
||
|
||
|
||
[38;2;255;187;0m[4mBoilerplate[0m
|
||
|
||
[48;2;30;30;40m[38;5;13m[3mBoilerplates / Scaffolds / Starter Kits / Generators / Stack Ensembles[0m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mredux-cli[0m[38;5;12m (https://github.com/SpencerCDixon/redux-cli) - Opinionated CLI for building Redux/React apps quicker.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mreactuate[0m[38;5;12m (https://github.com/reactuate/reactuate) - React/Redux stack (not a boilerplate kit).[39m
|
||
[38;5;12m - [39m[38;5;14m[1mreact-chrome-extension-boilerplate[0m[38;5;12m (https://github.com/jhen0409/react-chrome-extension-boilerplate) - Boilerplate for Chrome Extension React.js project.[39m
|
||
[38;5;12m - [39m[38;5;14m[1muniversal-redux[0m[38;5;12m (https://github.com/bdefore/universal-redux) - Npm package that lets you jump right into coding React and Redux with universal (isomorphic) rendering. Only manage Express setups or Webpack configurations if you want to.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mgenerator-react-aspnet-boilerplate[0m[38;5;12m (https://github.com/pauldotknopf/react-aspnet-boilerplate) - Starting point for building isomorphic React applications with ASP.NET Core 1, leveraging existing techniques.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mgenerator-redux[0m[38;5;12m (https://github.com/banderson/generator-redux) - CLI tools for Redux: next-gen functional Flux/React with devtools.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mgenerator-react-webpack-redux[0m[38;5;12m (https://github.com/stylesuxx/generator-react-webpack-redux) - React Webpack Generator including Redux support.[39m
|
||
[38;5;12m - [39m[38;5;14m[1msocrates[0m[38;5;12m (https://github.com/matthewmueller/socrates) - Small (8kb), batteries-included Redux store to reduce boilerplate and promote good habits.[39m
|
||
|
||
|
||
[38;2;255;187;0m[4mMiscellaneous[0m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mredux-core[0m[38;5;12m (https://github.com/jas-chen/redux-core) - Minimal Redux.[39m
|
||
|
||
|
||
[38;2;255;187;0m[4mLearning Material[0m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mRedux's concepts[0m
|
||
|
||
[48;5;235m[38;5;249m**Redux official documentation** (http://redux.js.org/) does a great job at explaining Redux's core principles.[49m[39m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mWhy immutable data structures[0m
|
||
|
||
[48;5;235m[38;5;249mThe **guide on performance** (https://facebook.github.io/react/docs/advanced-performance.html) of React's official documentation explains well what immutable data structures are and why they play an important role.[49m[39m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mSide Effects[0m
|
||
|
||
[48;5;235m[38;5;249m**Redux Loop's readme** (https://github.com/redux-loop/redux-loop) gives a good insight on Side Effects in the context of Redux.[49m[39m
|
||
|
||
[38;5;12mReading the aforementioned material will get you a good start for writing apps with Redux.[39m
|
||
[38;5;12mIf you are curious for more, check out following resources.[39m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mFunctional Programming - Basics[0m
|
||
|
||
[48;5;235m[38;5;249mThis **post** (http://jaysoo.ca/2016/01/13/functional-programming-little-ideas/) goes over basic concepts of functional programming while building a YouTube instant search demo app.[49m[39m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mReactive Programming[0m
|
||
|
||
[48;5;235m[38;5;249mThis **introduction to Reactive Programming** (https://gist.github.com/staltz/868e7e9bc2a7b8c1f754) explains Reactive Programming with clarity.[49m[39m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mFunctional Programming - Going beyond[0m
|
||
|
||
[48;5;235m[38;5;249mWell written **article** (https://medium.com/@chetcorcos/functional-programming-for-javascript-people-1915d8775504) that talks about interesting computer science concepts implemented in functional languages and how these apply to JavaScript.[49m[39m
|
||
|
||
[38;5;12m - [39m[38;5;14m[1mMonads[0m
|
||
|
||
[48;5;235m[38;5;249mCurious about monads? Wikipedia gives a good **overview on monads** (https://en.wikipedia.org/wiki/Monad_(functional_programming)) and **this article** (http://adit.io/posts/2013-04-17-functors,_applicatives,_and_monads_in_pictures.html) explains[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m monads in more details with graphics and simple examples.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
|
||
|
||
[38;2;255;187;0m[4mCommunity[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mReddit[0m[38;5;12m (https://www.reddit.com/r/reduxjs/)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mStack Overflow[0m[38;5;12m (http://stackoverflow.com/questions/tagged/redux)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mDiscord[0m[38;5;12m (https://discord.gg/0ZcbPKXt5bZ6au5t)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mSlack[0m[38;5;12m (http://slack.redux.io/)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mGitter[0m[38;5;12m (https://gitter.im/reactjs/redux)[39m
|
||
[38;5;12m- [39m[48;5;235m[38;5;249m[1m#rackt[0m[38;5;14m[1m on freenode[0m[38;5;12m (https://webchat.freenode.net/)[39m
|
||
|
||
|
||
[38;5;12mredux Github: https://github.com/brillout/awesome-redux[39m
|