docs: Phase 4 complete — bankai v10

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014NgfSjHE11oFpoSnLVKLXd
This commit is contained in:
Bendik Aagaard Lynghaug
2026-09-08 19:32:38 +02:00
co-authored by Claude Fable 5
parent 8b684a17d2
commit 0a351d7f33
+26
View File
@@ -87,6 +87,32 @@ Server string rendering is on par with nanohtml v1 (~13k ops/s, within
- [ ] Phase 3 follow-ups for the RFC: API shape feedback on lazy()
(thenable handlers vs wrapper), serializing streamed state for
hydration of async holes (bankai v10 territory).
- [x] Phase 4: bankai v10 — `packages/bankai`, a thin shell over Vite 8
(Rolldown). The server side needs no build at all: v8 apps are
plain ESM that Node runs as-authored, so only the client bundles.
- `bankai start <entry>` — dev: Vite middleware mode + HMR, with
per-request streaming SSR through vite.ssrLoadModule and a
virtual client entry (the user writes one isomorphic module;
bankai generates the two lines of browser glue).
- `bankai build <entry>` — client bundle + Vite manifest +
dist/bankai.json route/asset metadata + service worker (if
`<entry dir>/sw.js` exists, built with the precache list
injected) + brotli/gzip precompression of every text asset.
- `bankai serve` — production: static assets with immutable
caching and precompressed-variant negotiation, 103 Early Hints
(`res.writeEarlyHints`) carrying the route's assets before every
SSR page, streaming render, and a `window.initialState` tail
(script-safe serialization, choo internals filtered; hydration
ignores server-only scripts).
- `bankai inspect` — raw/gzip/brotli size table from the manifest.
All proven end-to-end in real Chromium: both dev and prod pages
hydrate with zero console errors and zero mismatch warnings, and
the 103 interim response is asserted at the HTTP level.
- [ ] Phase 4 follow-ups: HTTP/2 dev server with local certs (browsers
only act on Early Hints over h2/h3), static prerender of
enumerable routes, SSR `<title>` from state (needs a head hook in
toStream), edge-runtime deploy recipe (`new Response(toStream())`
— the server core is already web-standard).
- [ ] Phase 4: bankai v10 (Vite 8/Rolldown shell, SSR middleware,
103 Early Hints, service worker, precompression)
- [ ] Phase 5: docs, examples, launch