# Mutoid

Reactive library for data fetching, caching, state management (also) for isomorphic applications

## Installation

```sh
npm install mutoid
```

**Note** [`rxjs`](https://github.com/ReactiveX/rxjs), [`fp-ts`](https://github.com/gcanti/fp-ts),[`fp-ts-reactive`](https://github.com/siuvdlec/fp-ts-reactive) are required peer dependencies.
Instead [`react`](https://github.com/facebook/react), [`use-sync-external-store`](https://www.npmjs.com/package/use-sync-external-store) and [`io-ts`](https://github.com/gcanti/io-ts) are an optional peer dependencies.

## Documentation

[https://engineering.facile.it/mutoid](https://engineering.facile.it/mutoid)

## Example

If you want to see a simple [app](https://github.com/facile-it/mutoid/tree/master/example)  
If you clone this repo, you can run the example with

```console
npm ci
npm run dev-server
```

## Test, lint & tsc

```console
npm run lint
npm run tsc
npm run test
```
