Why Mado
Frontend infrastructure should not become the product.
Modern applications need real coordination. They do not automatically need a server-owned rendering protocol, an all-purpose platform or a dependency graph that expires before the product does.
The premise
A framework should make browser applications predictable, then get out of the way.
Mado packages the recurring coordination around DOM updates, component lifecycle, routes, page data and forms. Its boundary is intentionally narrow enough that platform skills—and the code you write today—remain useful later.
Own the application
Framework source remains small, UI source lives beside product code, and the production artifact is ordinary web output.
Keep the platform visible
Custom elements, DOM events, forms, URLs and browser APIs keep their native meaning instead of becoming framework-shaped imitations.
Share one model
Public documents and live application routes use the same component, page and lifecycle contracts.
Choose the backend independently
Use any HTTP service, database stack or deployment topology. Mado does not turn a frontend choice into a server commitment.
Write ordinary TypeScript
There is no framework template language or custom compiler to decode before a contributor can follow the control flow.
Choose honestly
The boundary is a feature, not a universal answer.
Choose Mado when
- You are building a browser frontend, not a backend platform.
- You want static public pages and live app routes to share one model.
- You prefer explicit conventions over framework magic.
- You want runtime dependencies and generated abstractions kept small.
- You are comfortable working near Web Components and browser APIs.
Choose something else when
- You need an integrated backend, ORM or server-action model.
- Your team depends on a mature pre-1.0-incompatible ecosystem.
- You need native mobile rendering from the same component tree.
- You want the framework to own infrastructure and deployment decisions.
- You cannot accept a young project whose APIs are still being refined.
The actual line
Mado ends where the browser ends.
Authentication tokens, API contracts and server behavior remain yours. Mado can help the frontend consume them; it does not pretend to be the system behind them.
Claims need evidence
Inspect what this boundary produces.
The proof page separates what the current code verifies from what Mado does not claim yet.
Inspect the proof