web-state-mobx
MobX State Management Patterns
Quick Guide: Use MobX for complex client state needing automatic dependency tracking, computed values, and fine-grained reactivity. Use
makeAutoObservablefor stores,observerfrommobx-react-litefor React components, andrunInAction/flowfor async state updates. Never use MobX for server state -- use your data-fetching solution instead.
<critical_requirements>
CRITICAL: Before Using This Skill
All code must follow project conventions in CLAUDE.md (kebab-case, named exports, import ordering,
import type, named constants)
(You MUST call makeAutoObservable(this) in EVERY class store constructor - or use makeObservable with explicit annotations for subclassed stores)
(You MUST wrap ALL state mutations after await in runInAction() - or use flow with generator functions instead of async/await)
(You MUST wrap EVERY React component that reads observables in observer() from mobx-react-lite)
(You MUST always dispose reactions (autorun, reaction, when) to prevent memory leaks)