Skip to content


Restate provides an (experimental) state management library for React apps.


Easy to use

Restate is a library you will love. It is the state management library for React you were missing all the time. As simple as the useState hook, but with all the power you need.


Easy to learn

Learning new library is not always easy. We aimed to make restate as user friendly as possible by keeping it simple - and the learning curve as shallow as possible.


Easy to test

Using some very simple patterns, restate applications are very easy to test. In fact, restate provides dependency injection tools to allow for a good testing experience without any mocking library.



Restate is written in Typescript and therefore fits very nicely in any Typescript project. No worries about missing types.


Boost your productivity

With restate's dependency injection you can start developing you components, view, and even pages in pure isolation. Hence, it becomes very easy with restate to develop your whole app in using tools like storybook.



Under the hood restate uses RxJS for reactive state changes. If you need, you can leverage all the power that comes with RxJS and truly create reactive applications.

Released under the MIT License.