Refrax is a JavaScript framework for building api-based data-driven applications. Inspired by collaboration with sarahhenkens and omab and concepts from similar libraries.
- Unidirectional: User interaction in views propagate actions that affect stores, triggering view updates for those that reference data from affected stores.
- Colocation: Resources and actions can live next to the views that rely on them, so you can easily reason about your app.
- Partials: Data can be partially represented across various resources allowing views to efficiently fetch a small subset of data that can be re-used when a more detailed subset of data is needed.
- Mutations: Refrax lets you mutate data on the client and propagate to a server using actions and mutable resources directly, and offers automatic data consistency, optimistic updates, and error handling.
Using npm:
$ npm install --save refrax
The repository comes with an implementation of TodoMVC. To try it out:
git clone https://github.com/netarc/refrax.git
cd refrax/examples/todo && npm install
npm start
Then, just point your browser at http://localhost:3000
.
Refrax is BSD licensed.