All Projects → ioof-holdings → Redux Subspace

ioof-holdings / Redux Subspace

Licence: bsd-3-clause
Build decoupled, componentized Redux apps with a single global store

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Redux Subspace

Redux Most
Most.js based middleware for Redux. Handle async actions with monadic streams & reactive programming.
Stars: ✭ 137 (-57.05%)
Mutual labels:  redux-thunk, redux-observable, redux-saga
react-workshops
Online react workshops
Stars: ✭ 36 (-88.71%)
Mutual labels:  redux-observable, redux-saga, redux-thunk
data-flow
frontend data flow explored in React
Stars: ✭ 19 (-94.04%)
Mutual labels:  redux-observable, redux-saga, redux-thunk
React Social Network
Simple React Social Network
Stars: ✭ 409 (+28.21%)
Mutual labels:  redux-thunk, redux-saga
React Admin
基于antd、redux-observable、redux-thunk、react-router响应式SPA脚手架,后台管理系统demo. 权限管理,用户管理,菜单管理。无限级菜单,下拉树形选择框
Stars: ✭ 141 (-55.8%)
Mutual labels:  redux-thunk, redux-observable
Kea
Production Ready State Management for React
Stars: ✭ 1,805 (+465.83%)
Mutual labels:  redux-thunk, redux-saga
Redux Saga Thunk
Dispatching an action handled by redux-saga returns promise
Stars: ✭ 212 (-33.54%)
Mutual labels:  redux-thunk, redux-saga
React Interview Questions
300+ React Interview Questions
Stars: ✭ 151 (-52.66%)
Mutual labels:  redux-thunk, redux-saga
React Redux Firebase
Redux bindings for Firebase. Includes React Hooks and Higher Order Components.
Stars: ✭ 2,492 (+681.19%)
Mutual labels:  redux-thunk, redux-observable
react-ts-sample
sample tech stack with react and typescript
Stars: ✭ 26 (-91.85%)
Mutual labels:  redux-observable, redux-saga
Fakeflix
Not the usual clone that you can find on the web.
Stars: ✭ 4,429 (+1288.4%)
Mutual labels:  redux-saga, redux-thunk
rc-redux-model
一种较为舒适的数据状态管理书写方式,内部自动生成 action, 只需记住一个 action,可以修改任意的 state 值,方便简洁,释放你的 CV 键~
Stars: ✭ 48 (-84.95%)
Mutual labels:  redux-saga, redux-thunk
OneArtical
learning and practice redux,react-redux,redux-saga,redux-persist,redux-thunk and so on
Stars: ✭ 61 (-80.88%)
Mutual labels:  redux-saga, redux-thunk
movies
Real world isomorphic application for movies search, based on Webpack 5 / Express / React 17 + Redux-Saga / Bootstrap 4.6 + CSS Modules / i18next / SSR
Stars: ✭ 20 (-93.73%)
Mutual labels:  redux-saga
Redux Saga Firebase
A redux saga integration for firebase.
Stars: ✭ 279 (-12.54%)
Mutual labels:  redux-saga
create-react-redux-app
React boilerplate based on create-react-app
Stars: ✭ 49 (-84.64%)
Mutual labels:  redux-saga
ant-design-snippets
ant-design-snippets
Stars: ✭ 18 (-94.36%)
Mutual labels:  redux-thunk
Express React Fullstack
Simple, Useful Full Stack Express and React Application
Stars: ✭ 286 (-10.34%)
Mutual labels:  redux-saga
Chronos Timetracker
Desktop client for JIRA. Track time, upload worklogs without a hassle.
Stars: ✭ 273 (-14.42%)
Mutual labels:  redux-saga
react-enterprise-starter-kit
Highly Scalable Awesome React Starter Kit for an enterprise application with a very easy maintainable codebase. 🔥
Stars: ✭ 55 (-82.76%)
Mutual labels:  redux-saga

redux-subspace

Deprecated

This library is no longer being actively maintained.

IOOF has been slowly moving away from the ubiquitous use of Redux as a core piece of our micro-frontend architecture and have been actively replacing the usage of this library with more standard React and JavaScript patterns. Due to some technical constraints, we've also been unable to upgrade to the latest version of the library ourselves for quite some time now, further fuelling our desire to move away from this solution.

At this time, we will be ceasing all maintenance tasks and we recommend that you consider using an alternative library:

If you want to continue using this library, we encourage you to fork this repo and take over maintenance yourself.


npm version npm downloads License: BSD-3-Clause

All Contributors PRs Welcome

Watch on GitHub Star on GitHub

This is a library to help build decoupled, componentized Redux apps that share a single global store.

Installation

npm install --save redux-subspace react-redux-subspace

Quick Start

import React from 'react'
import { createStore, combineReducers } from 'redux'
import { Provider } from 'react-redux'
import { namespaced } from 'redux-subspace'
import { SubspaceProvider } from 'react-redux-subspace'
import { TodoApp, todoReducer } from './todoApp'
import { CounterApp, counterReducer } from './counterApp'

const rootReducer = combineReducers({
  todo: todoReducer
  counter1: namespaced('counter1')(counterReducer),
  counter2: namespaced('counter2')(counterReducer)
})

const store = createStore(rootReducer)

const App = () => (
  <Provider store={store}>
    <SubspaceProvider mapState={(state) => state.todo}>
      <TodoApp />
    </SubspaceProvider>
    <SubspaceProvider mapState={(state) => state.counter1} namespace="counter1">
      <CounterApp />
    </SubspaceProvider>
    <SubspaceProvider mapState={(state) => state.counter2} namespace="counter2">
      <CounterApp />
    </SubspaceProvider>
  </Provider>
)

Documentation

Packages

Upgrading From Version 1 to Version 2

When upgrading to version 2 of Redux Subspace, refer to the migration guide to work through all the breaking changes.

Media

Contributors

Thanks goes to these wonderful people (emojis):

Michael Peyper
Michael Peyper

💬 🐛 💻 📖 💡 🤔 🚇 👀 📦 📢 ⚠️ 🔧
Jonathan Peyper
Jonathan Peyper

💬 💻 🤔 👀 ⚠️
Vivian Farrell
Vivian Farrell

🤔 📦 👀 📢
Emily Rosengren
Emily Rosengren

📢
Morgan Larosa
Morgan Larosa

🚇
Amit Kothari
Amit Kothari

💻 💡
Riku Rouvila
Riku Rouvila

💻 📖 ⚠️
Michael
Michael

💻
James Adams
James Adams

📖
Lee Kyles
Lee Kyles

💻 ⚠️
Evert Bouw
Evert Bouw

💻 ⚠️ 📖 💡
Paweł Bród
Paweł Bród

🐛
majo44
majo44

🐛 💻 ⚠️
Garth Newton
Garth Newton

🐛 📖
Mateusz Burzyński
Mateusz Burzyński

🔧
psamusev
psamusev

🐛
Jay Phelps
Jay Phelps

👀
Mark Erikson
Mark Erikson

📢
Nikita
Nikita

🐛 💻 ⚠️
Conrad Buck
Conrad Buck

💻 ⚠️ 📖
travikk
travikk

👀

This project follows the all-contributors specification. Contributions of any kind are welcome!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].