Skip to content

Design Principles ​

Owl is built on principles that make it powerful yet approachable:

Explicit over Implicit

Reactiveness is explicit — you read signals by calling them (this.count()), making dependencies visible and bugs easier to trace. No hidden magic.

Composable Architecture

Plugins provide a structured way to share state and services across components. They compose naturally and support full type inference.

Scales with You

Start simple with inline templates and signals. Grow into a large codebase with external templates, registries, and plugins. Owl powers Odoo's multi-million-line codebase — it's proven at scale.

Developer Experience

First-class TypeScript support, comprehensive error messages in dev mode, and a browser devtools extension for debugging.