Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jbjorge/diffx
A state management library for React, Vue.js, Svelte, Angular and vanilla javascript
https://github.com/jbjorge/diffx
angular async diffx diffx-devtools react react-hooks rxjs state-management svelte typescript vue vue3-typescript vuejs
Last synced: 2 days ago
JSON representation
A state management library for React, Vue.js, Svelte, Angular and vanilla javascript
- Host: GitHub
- URL: https://github.com/jbjorge/diffx
- Owner: jbjorge
- License: mit
- Created: 2021-05-25T14:55:40.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2021-09-27T21:21:25.000Z (almost 3 years ago)
- Last Synced: 2024-09-19T07:42:46.648Z (8 days ago)
- Topics: angular, async, diffx, diffx-devtools, react, react-hooks, rxjs, state-management, svelte, typescript, vue, vue3-typescript, vuejs
- Language: TypeScript
- Homepage:
- Size: 4 MB
- Stars: 54
- Watchers: 4
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Diffx
Diffx is a state management library that focuses on three things:
* Make it easy to learn and use
* Get rid of boilerplate
* Make great devtools### Key features
🤏 Small API and a very compact syntax
🔍 Tracks the _reason_ behind changes to the state
🔧 Devtools that track:
- what, when, where and **why** state changed
- async start/resolution
- nested changes
- changes triggered by watchers
💾 Built in persistence
📝 Written in Typescript, inferring your types## Supported frameworks
### ![React logo](https://github.com/jbjorge/diffx/raw/master/assets/framework-logos/react.png) React
* [documentation](https://github.com/jbjorge/diffx/tree/master/react)
* [npm package](https://npmjs.org/package/@diffx/react)### ![Vue logo](https://github.com/jbjorge/diffx/raw/master/assets/framework-logos/vue.png) Vue.js
* [documentation](https://github.com/jbjorge/diffx/tree/master/vue)
* [npm package](https://npmjs.org/package/@diffx/vue)### ![Svelte logo](https://github.com/jbjorge/diffx/raw/master/assets/framework-logos/svelte.png) Svelte
* [documentation](https://github.com/jbjorge/diffx/tree/master/svelte)
* [npm package](https://npmjs.org/package/@diffx/svelte)### ![Angular logo](https://github.com/jbjorge/diffx/raw/master/assets/framework-logos/angular.png) Angular
* [documentation](https://github.com/jbjorge/diffx/tree/master/angular)
* [npm package](https://npmjs.org/package/@diffx/angular)### ![RxJS logo](https://github.com/jbjorge/diffx/raw/master/assets/framework-logos/rxjs.png) RxJS
* [documentation](https://github.com/jbjorge/diffx/tree/master/rxjs)
* [npm package](https://npmjs.org/package/@diffx/rxjs)### No framework
* [documentation](https://github.com/jbjorge/diffx/tree/master/core)
* [npm package](https://npmjs.org/package/@diffx/core)