> For the complete documentation index, see [llms.txt](https://vytautaspranskunas.gitbook.io/react-state-rxjs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://vytautaspranskunas.gitbook.io/react-state-rxjs/master.md).

# Introduction

`react-state` is a controlled nested state container designed to help write performant, consistent applications on top of React.&#x20;

### From version 6.0.0 react-state supports 2 data providers!!! 🔥

* [**Immer**](https://github.com/immerjs/immer) **(**[**here is nice blog post about it**](https://hackernoon.com/introducing-immer-immutability-the-easy-way-9d73d8f71cb3)**)**
* [**ImmutableJs**](https://github.com/immutable-js/immutable-js)

Core tenets:

* State is a single immutable data structure
* Each component gets its own peace of nested state
* State accessed with 'actions' variable under component or the `Store`, an observable of state and an observer of global state

`react-state` share same core as [`ng-state`](https://github.com/ng-state/store) so it is very beneficial for those who are not bind to one technology.&#x20;
