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.

  1. Agents need locality. One route, one renderer, one component file, one obvious edit.
  2. Applications should be readable by agents. Native HTML and browser modules are easier to click, scrape, inspect, and maintain than opaque transpiled bundles.
  3. Tooling should stay subordinate. Use a fast ESM build to resolve packages, not a compiler-shaped application model.
  4. HTML is the first payload. JavaScript upgrades the page; it does not own the page.
  5. Lit owns interactive islands. Server-render them, hydrate in place, and keep local state local.
  6. The edge is enough. Cloudflare Workers, static assets, and fragments scale from zero.