Manifesto
Make the stable layer the default layer.
Browsers have already shipped the frontend runtime: HTML, CSS, JavaScript, Custom Elements, Shadow DOM, URL, Fetch, Streams, and History. Native Fragments is a small agreement to use those primitives directly.
Explicit HTML. Stream the useful work. Keep native navigation. Put state where it belongs. Use modern tools without making the toolchain the product.
- Agents need locality. One route, one renderer, one component file, one obvious edit.
- Applications should be readable by agents. Native HTML and browser modules are easier to click, scrape, inspect, and maintain than opaque transpiled bundles.
- Tooling should stay subordinate. Use a fast ESM build to resolve packages, not a compiler-shaped application model.
- HTML is the first payload. JavaScript upgrades the page; it does not own the page.
- Lit owns interactive islands. Server-render them, hydrate in place, and keep local state local.
- The edge is enough. Cloudflare Workers, static assets, and fragments scale from zero.