Awesome Open Source
Awesome Open Source

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!


Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
javascript (68,071)ย 
react (5,167)ย 
redux (1,151)ย 
redux-saga (104)ย 
redux-thunk (50)ย 
redux-observable (17)ย 
micro-frontends (16)ย 

Find Open Source By Browsing 7,000 Topics Across 59 Categories

Advertising ๐Ÿ“ฆย 10
All Projects
Application Programming Interfaces ๐Ÿ“ฆย 124
Applications ๐Ÿ“ฆย 192
Artificial Intelligence ๐Ÿ“ฆย 78
Blockchain ๐Ÿ“ฆย 73
Build Tools ๐Ÿ“ฆย 113
Cloud Computing ๐Ÿ“ฆย 80
Code Quality ๐Ÿ“ฆย 28
Collaboration ๐Ÿ“ฆย 32
Command Line Interface ๐Ÿ“ฆย 49
Community ๐Ÿ“ฆย 83
Companies ๐Ÿ“ฆย 60
Compilers ๐Ÿ“ฆย 63
Computer Science ๐Ÿ“ฆย 80
Configuration Management ๐Ÿ“ฆย 42
Content Management ๐Ÿ“ฆย 175
Control Flow ๐Ÿ“ฆย 213
Data Formats ๐Ÿ“ฆย 78
Data Processing ๐Ÿ“ฆย 276
Data Storage ๐Ÿ“ฆย 135
Economics ๐Ÿ“ฆย 64
Frameworks ๐Ÿ“ฆย 215
Games ๐Ÿ“ฆย 129
Graphics ๐Ÿ“ฆย 110
Hardware ๐Ÿ“ฆย 152
Integrated Development Environments ๐Ÿ“ฆย 49
Learning Resources ๐Ÿ“ฆย 166
Legal ๐Ÿ“ฆย 29
Libraries ๐Ÿ“ฆย 129
Lists Of Projects ๐Ÿ“ฆย 22
Machine Learning ๐Ÿ“ฆย 347
Mapping ๐Ÿ“ฆย 64
Marketing ๐Ÿ“ฆย 15
Mathematics ๐Ÿ“ฆย 55
Media ๐Ÿ“ฆย 239
Messaging ๐Ÿ“ฆย 98
Networking ๐Ÿ“ฆย 315
Operating Systems ๐Ÿ“ฆย 89
Operations ๐Ÿ“ฆย 121
Package Managers ๐Ÿ“ฆย 55
Programming Languages ๐Ÿ“ฆย 245
Runtime Environments ๐Ÿ“ฆย 100
Science ๐Ÿ“ฆย 42
Security ๐Ÿ“ฆย 396
Social Media ๐Ÿ“ฆย 27
Software Architecture ๐Ÿ“ฆย 72
Software Development ๐Ÿ“ฆย 72
Software Performance ๐Ÿ“ฆย 58
Software Quality ๐Ÿ“ฆย 133
Text Editors ๐Ÿ“ฆย 49
Text Processing ๐Ÿ“ฆย 136
User Interface ๐Ÿ“ฆย 330
User Interface Components ๐Ÿ“ฆย 514
Version Control ๐Ÿ“ฆย 30
Virtualization ๐Ÿ“ฆย 71
Web Browsers ๐Ÿ“ฆย 42
Web Servers ๐Ÿ“ฆย 26
Web User Interface ๐Ÿ“ฆย 210