Laco consists of three simple ideas
The first idea is the notion of a store. The store handles state and you can have multiple stores. You can create a store like so:
You can get or set a new state on your store:
The second idea is the idea of actions. An action is a function that sets a new state on a store.
The third and final idea is the idea of a Subscribe component. The Subscribe component takes an array of stores as input. The component acts like
connect() for those that are familiar with Redux. The difference is that
connect() is a higher order component while the Subscribe component uses render props. More on render props here.
That is the general gist of Laco. Should be simple and straightforward.
Testing example using Tape.
CounterStore.reset() takes care of some edge cases more about it here.
- Time travel
- Jump to action
You may look into the API for correct logging with Devtools Extension and Native Debugger.