Nanostores is a minimal state management library (<1KB bundled). You create stores as atoms (observable values) and computed stores (derived state). Components subscribe to stores and re-render when store values change. No actions, reducers, or boilerplate—just plain functions. Example: atom(0) creates a counter. counter.set(5) updates it. Components using useAtom(counter) re-render when counter changes. Computed stores combine atoms: computed([countA, countB], (a, b) => a + b).