Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ioof-holdings/redux-subspace
Build decoupled, componentized Redux apps with a single global store
https://github.com/ioof-holdings/redux-subspace
micro-frontends react redux redux-loop redux-observable redux-promise redux-saga redux-subspace redux-thunk
Last synced: about 2 months ago
JSON representation
Build decoupled, componentized Redux apps with a single global store
- Host: GitHub
- URL: https://github.com/ioof-holdings/redux-subspace
- Owner: ioof-holdings
- License: bsd-3-clause
- Archived: true
- Created: 2016-11-28T02:20:57.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2021-01-27T03:15:40.000Z (over 3 years ago)
- Last Synced: 2024-05-16T16:22:26.112Z (4 months ago)
- Topics: micro-frontends, react, redux, redux-loop, redux-observable, redux-promise, redux-saga, redux-subspace, redux-thunk
- Language: JavaScript
- Homepage: https://ioof-holdings.github.io/redux-subspace/
- Size: 10.1 MB
- Stars: 312
- Watchers: 10
- Forks: 33
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# 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:
* [`redux-doghouse`](https://www.npmjs.com/package/redux-doghouse)
* [`redux-fractal`](https://www.npmjs.com/package/redux-fractal)
* [`lean-redux`](https://www.npmjs.com/package/lean-redux)
* [`redux-react-local`](https://www.npmjs.com/package/redux-react-local)
* [`multireducer`](https://www.npmjs.com/package/multireducer)If you want to continue using this library, we encourage you to fork this repo and take over maintenance yourself.
---
[![npm version](https://img.shields.io/npm/v/redux-subspace.svg?style=flat-square)](https://www.npmjs.com/package/redux-subspace)
[![npm downloads](https://img.shields.io/npm/dm/redux-subspace.svg?style=flat-square)](https://www.npmjs.com/package/redux-subspace)
[![License: BSD-3-Clause](https://img.shields.io/npm/l/redux-subspace.svg?style=flat-square)](/LICENSE.md)[![All Contributors](https://img.shields.io/badge/all_contributors-21-orange.svg?style=flat-square)](#contributors-)
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com)[![Watch on GitHub](https://img.shields.io/github/watchers/ioof-holdings/redux-subspace.svg?style=social)](https://github.com/ioof-holdings/redux-subspace/watchers)
[![Star on GitHub](https://img.shields.io/github/stars/ioof-holdings/redux-subspace.svg?style=social)](https://github.com/ioof-holdings/redux-subspace/stargazers)This is a library to help build decoupled, componentized [Redux](http://redux.js.org/) apps that share a single global store.
## Installation
```sh
npm install --save redux-subspace react-redux-subspace
```## Quick Start
```javascript
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 = () => (
state.todo}>
state.counter1} namespace="counter1">
state.counter2} namespace="counter2">
)
```## [Documentation](https://ioof-holdings.github.io/redux-subspace/)
* [Introduction](https://ioof-holdings.github.io/redux-subspace/docs/Introduction.html)
* [Basics](https://ioof-holdings.github.io/redux-subspace/docs/basics/)
* [Advanced](https://ioof-holdings.github.io/redux-subspace/docs/advanced/)
* [Examples](https://ioof-holdings.github.io/redux-subspace/docs/Examples.html)## Packages
* [`redux-subspace`](https://github.com/ioof-holdings/redux-subspace/tree/master/packages/redux-subspace): The core package for Redux Subspace
* [`react-redux-subspace`](https://github.com/ioof-holdings/redux-subspace/tree/master/packages/react-redux-subspace): React bindings compatible with `react-redux`
* [`redux-subspace-loop`](https://github.com/ioof-holdings/redux-subspace/tree/master/packages/redux-subspace-loop): Utilities for integrating with `redux-loop`
* [`redux-subspace-observable`](https://github.com/ioof-holdings/redux-subspace/tree/master/packages/redux-subspace-observable): Utilities for integrating with `redux-observable`
* [`redux-subspace-saga`](https://github.com/ioof-holdings/redux-subspace/tree/master/packages/redux-subspace-saga): Utilities for integrating with `redux-saga`
* [`redux-subspace-wormhole`](https://github.com/ioof-holdings/redux-subspace/tree/master/packages/redux-subspace-wormhole): Middleware for exposing additional state to subspaces## Upgrading From Version 1 to Version 2
When upgrading to version 2 of Redux Subspace, refer to the [migration guide](/docs/Migrating.md) to work through all the breaking changes.
## Media
* [Scaling React and Redux at IOOF](http://www.slideshare.net/VivianFarrell/scaling-react-and-redux-at-ioof) - [MelbJS](http://melbjs.com/) (Vivian Farrell, Emily Rosengren)
* [You might Need Redux (And Its Ecosystem)](http://blog.isquaredsoftware.com/2017/09/presentation-might-need-redux-ecosystem/) - [React Boston](http://www.reactboston.com/) (Mark Erikson)
* [From Monolith to Micro-Frontends](https://mpeyper.github.io/from-monolith-to-micro-frontends-wd42/) - [Web Developer 42ห](http://web.dev42.co/) (Michael Peyper)## Contributors
Thanks goes to these wonderful people ([emojis](https://github.com/kentcdodds/all-contributors#emoji-key)):
Michael Peyper
๐ฌ ๐ ๐ป ๐ ๐ก ๐ค ๐ ๐ ๐ฆ ๐ข โ ๏ธ ๐ง
Jonathan Peyper
๐ฌ ๐ป ๐ค ๐ โ ๏ธ
Vivian Farrell
๐ค ๐ฆ ๐ ๐ข
Emily Rosengren
๐ข
Morgan Larosa
๐
Amit Kothari
๐ป ๐ก
Riku Rouvila
๐ป ๐ โ ๏ธ
Michael
๐ป
James Adams
๐
Lee Kyles
๐ป โ ๏ธ
Evert Bouw
๐ป โ ๏ธ ๐ ๐ก
Paweล Brรณd
๐
majo44
๐ ๐ป โ ๏ธ
Garth Newton
๐ ๐
Mateusz Burzyลski
๐ง
psamusev
๐
Jay Phelps
๐
Mark Erikson
๐ข
Nikita
๐ ๐ป โ ๏ธ
Conrad Buck
๐ป โ ๏ธ ๐
travikk
๐
This project follows the [all-contributors](https://github.com/kentcdodds/all-contributors) specification.
Contributions of any kind are welcome!