setup-zustand
Installation
SKILL.md
Zustand Enforcement
Repo/code changes: run /deslop before commit, push, PR, or merge.
What This Catches
- Ban single-parens
create<T>()-- must becreate<T>()()for middleware type inference - Ban inline object selectors --
(s) => ({ a: s.a })cause infinite re-renders, useuseShallow - Ban localStorage/sessionStorage in store files -- use zustand
persistmiddleware
Stack Decisions
- Zustand client state only: theme, sidebar, selected tab, draft form data. Server data -> TanStack Query / Connect Query.
useShallowrequired for multi-value selectors (hook enforce).- Callback form required for
set()(hook enforce).
Initial setup (install, config, verify): see SETUP.md.