The Event Storm is a tiny store implementation with pure javascript. Event Storm will help to organize and manage your application's state. The library is deigned to be framework and platform agnotics, which empowers an ability to use it, in any Javascript runtime.
There is an official React wrapper of the Event Storm.
- Large scale application with a lot of data consumers(1K+)
- The application is doing a lot of CPU intensive computations
- The bundle size limited applications(library size 2kb)
- Microservice applications(no matter using the same technology for microservices or not)
To install the library run:
# npm
npm i event-storm
# yarn
yarn add event-storm
import { createStorm } from 'event-storm';
const defaultState = {
name: 'Event Storm',
isActive: false,
}
const storm = createStorm(defaultState);
// subscribing to listen all the changes
storm.subscribe((state, access) => console.log(access(storm)));
// subscribing to listen only partial changes
storm.subscribe((state, access) => console.log(access(storm.name)));
// update the state
storm.dispatch({ name: 'Event Storm - manage your state effectively' });
// use previous state to make the updates
storm.dispatch(prev => ({ isActive: !prev.isActive }));
Examples: