Rx Store is a reactive state management solution for frontend component libraries such as React & Angular, allowing you to build your application's logic using RxJS.
Read the documentation to learn more about rx store and get started!
Package | Version | Description |
---|---|---|
@rx-store/core |
Reactive State Management | |
@rx-store/react |
React Bindings | |
@rx-store/visualizer |
experimental | Visualizes data flow over time |
@rx-store/devtools |
experimental | Debugging solution using the visualizer |
First, clone the monorepo onto your machine:
git clone git@github.com:rx-store/rx-store.git
Then, install the monorepo dependencies:
yarn
This monorepo uses Nx, which allows:
- Visualizing the dependencies between packages
- Automatically compiling affected packages when there are changes
- Run CI checks only for affected packages when there are changes.
To develop locally, you may install Nx
globally:
npm install -g @nrwl/cli
The packages are organized into apps
folder, which are runnable, and libs
for library code. To generate a new app or lib, see the Nx docs.
Replace react-example-counter
with the name of the project in the apps
folder you want to run.
Develop:
nx serve react-example-counter
When editing files in the core during development, the example you are running will re-compile. Nx builds a dependency graph, and runs webpack from the top level. If changes are made in a package that the example app depends on, or any package it in turn depends on, Nx will figure it out & re-build the affected packages.
Build:
nx build --with-deps react-example-counter
By passing --with-deps
, we are telling Nx to build a dependency graph & compile all of the package(s) the example project depends on, and all of the package(s) those in turn depend on.
Develop:
nx run rx-store-website:docusaurus
Build:
nx build rx-store-website:docusaurus
Thanks goes to these wonderful people (emoji key):
Kostia P 📖 👀 🧑🏫 |
Josh Ribakoff 💻 🚧 📦 📆 👀 🤔 📖 |
Kyle Cannon 🚇 🚧 📦 📆 👀 🤔 |
gennadypolakov 💻 |
This project follows the all-contributors specification. Contributions of any kind welcome!