Answer

MobX is a reactive state management library that automatically tracks dependencies and updates the UI when state changes. It uses observables, actions, and computed values. Define a store: import { makeObservable, observable, action, computed } from 'mobx'; class CounterStore { count = 0; constructor() { makeObservable(this, { count: observable, doubled: computed, increment: action }); } get doubled() { return this.count * 2; } increment() { this.count++; } }. In React: const Counter = observer(() => { const store = useLocalObservable(() => new CounterStore()); return <button onClick={store.increment}>{store.count}</button>; });. The observer HOC auto-subscribes to any observables accessed in the render. MobX is popular in enterprise Angular-like codebases for its OOP style and minimal ceremony. Key philosophy: "anything that can be derived from state should be derived automatically." MobX-State-Tree (MST) adds structural conventions on top of MobX.