todomvc
TodoMVC is a reference project that implements the same standardized Todo application across most popular JavaScript frameworks and UI libraries, letting developers compare syntax, structure, and idioms side by side. It also serves as the basis for the cross-browser Speedometer benchmark and a clean spec for AI coding agents.
No licenseLicense unknown or unstated — treat as all-rights-reserved until clarified.
Production readiness
4/5- Actively maintainedCommits in the last 6 months
- No known vulnerabilitiesNo OSV advisories
- Clear, usable licenseLicense unknown / unstated
- Proven adoptionWidely used
- Has documentationDocumentation indexed
npm install todomvcOur analysis
A long-running collection of identical Todo apps built in dozens of JavaScript frameworks and libraries, each following one shared app specification so they can be compared on equal footing.
When to use todomvc
Use it when evaluating or learning a new UI framework, teaching framework idioms, onboarding developers, or as a small, well-defined spec for benchmarking and AI-agent code generation experiments.
When not to
Don't rely on it to judge a framework's real-world capability, scalability, or bundle size — a Todo app exercises only a tiny slice of what frameworks do. For richer comparisons use RealWorld; for performance numbers use dedicated benchmarks.
Strengths
- De-facto industry-standard reference covering an enormous range of frameworks
- Single shared spec makes side-by-side comparison genuinely apples-to-apples
- Underpins the Speedometer benchmark used by every major browser engine
- Excellent teaching and onboarding resource, plus a clean spec for AI agents
- Backed by well-known maintainers and a large contributor base
Trade-offs
- A Todo app is deliberately trivial and reveals little about complex app architecture, state, or performance under load
- Many legacy framework examples are unmaintained historical artifacts
- Intentionally uses unminified code, so it's not a fair size comparison
- Not a usable library or tool — it's a comparison/learning corpus
Maturity
Very mature and historically significant — over a decade old with ~29k stars, an active core team, and a curated set of examples kept current with each framework's latest stable line (React 19, Vue 3.5, Angular 21, Svelte 5, etc.) as of TodoMVC 2.0. Modern examples are tested via a Cypress suite.
TodoMVC is a reference project that implements the same standardized Todo application across most popular JavaScript frameworks and UI libraries, letting developers compare syntax, structure, and idioms side by side. It also serves as the basis for the cross-browser Speedometer benchmark and a clean spec for AI coding agents.