WebUI Framework
SSR without JavaScript on the server.
No virtual DOM. No JSX. Just HTML, streamed from any language.
HTML for structure. CSS for style. TypeScript for behavior. The way the web was meant to work.
Compiled, not interpreted
Templates and Web Components compile at build time into a binary Protocol Buffer. The server's hot path is just filling holes and streaming bytes. No template parsing, no AST walking, no interpretation at runtime.
Render from any language
SSR has historically been a Node.js privilege. WebUI changes that. Stream pages from Rust, Go, Python, C#, Bun, Deno, Node.js, or WASM running at the edge or in the browser. The protocol is just bytes; any runtime that can read bytes and write strings can serve a site.
Truly isomorphic
Same Web Components run on the server and the client. The server renders dynamic, per-request HTML by filling compiled templates with live state, with no JavaScript runtime needed. The browser streams a fully-rendered page, then hydrates the same components against the existing DOM. Isomorphic apps without the Node.js dependency.
webui-framework
A tiny client runtime for Web Components, tuned for rendering speed and low memory. Built on Declarative Shadow DOM and native browser APIs. No virtual DOM, no proprietary component model, no JSX.
webui-router
Routes declared in HTML and compiled at build time. The server matches every navigation and returns the route chain as JSON; the client diffs against the current chain and remounts only the level that changed. Tagged caching and invalidation graphs are validated by the compiler, not configured at runtime.
webui-press
A blazing-fast static site generator powered by the framework itself. Compiles markdown and components in parallel into a fully static site. Perfect for GitHub Pages, CDNs, and anywhere that just serves files. (You are reading a site built with it.)