Reffect — is a declarative and reactive multi-store state manager for JavaScript/TypeScript applications inspired by Reatom and Effector
@reffect/strict
Store middleware for Reffect
How to use
import { store, effect } from "@reffect/core";
import { strictUpdate } from "@reffect/logger";
const projectsStore = store({ projects: [] }, "projects", [strictUpdate]);
const setProjects = effect(projectsStore, "projects");
// ...
setProjects(["foo", "bar"]); // state of projectsStore will update to { projects: ["foo", "bar"] }
setProjects(["foo", "bar"]); // state of projectsStore won't update because new state and current are equals