Bez is a project to automatically generate a web rendering engine from formal specifications and tests, rather than building one by hand. It converts spec text into model-generated candidate implementations, runs those candidates inside a Rust engine, and rejects or accepts them by voting against cached runs of the three shipping browsers (Chromium, Firefox, WebKit) and WPT. The goals are a complete but tree-shakable build (omit unused features), small and fast engines for embedding, and rapid regeneration when specs or tests change. Documentation covers the generation loop, geometry verification against browsers, the set of generated layout rules so far, and a roadmap for bootstrapping and proof-of-concept progress.
Progress combines hand-written core pieces (DOM, style, box/fragment trees) with generated layout rules. Coverage against browser-compat-data is still small: overall 0.6% generated, 0.3% hand-written, 0.5% linked, 5.7% oracle-only, and 93.0% unreached as of 2026-09-25. Nine CSS 2.1 layout rules live in generated code; eight were accepted by the three-browser vote and together they pass 227 recipe cases and 11 usable WPT normal-flow pages. Cross-browser voting shows strong agreement: 699 of 705 browser-pair comparisons aligned, with Firefox named the outlier in all disagreements; a concrete Gecko rounding difference (1/60 px vs 1/64 px) explains several real-world breakages. WPT three-engine majority covers 2,162,676 of 2,282,301 test keys (94.8%), and script-observable traces agree for 15 of 18 engine pairs.
Summary generated by AI from the linked article. hn.today is not affiliated with Hacker News or Y Combinator.