Rebar UI

1.0

Published 2026-09-14 · updated 2026-09-25 — part of an ongoing build diary of dated, real measurements, not a one-time proof of the platform's superiority.

The receipts

Everything on the scenarios page is built from the real, repeated measurements below — same target UI, built against antd directly and against rebar-ui (always through its small procedural placement layer, never hand-authored), across two prompt styles (a written spec, a reference screenshot) and three models, n=15 per condition unless stated otherwise. If you just want the bottom line, the scenarios page already has it — this page and everything after it is for anyone who wants to verify it. All five runs below were made 2026-08-29/30 against rebar-ui v0.1.0 — see the Kanban benchmark for the same underlying question re-measured against the current v0.12.1.

Experimentantd (mean)rebar-ui (mean)Tokens
Claude · text prompt31,23130,211−3.3%
Claude · image prompt31,76530,787−3.1%
Qwen · text prompt3,3881,228−63.8%
Qwen · image prompt3,9482,956−25.1%
Kimi · text prompt5,9671,925−67.7%
Average of the five——−32.6%

Same target component (a header, an info banner, a checklist, a warning callout) across all five, real per-turn API usage extracted from each run's own transcript, every output Playwright-verified for a clean render.

Experimentantd (mean)rebar-ui (mean)Wall-clock time
Claude · text prompt24.5s14.7s−40.0%
Claude · image prompt27.2s16.7s−38.6%
Qwen · text prompt46.6s10.3s−77.9%
Qwen · image prompt33.2s13.8s−58.4%
Kimi · text prompt160.0s37.5s−76.6%
Average of the five——−58.3%
Experimentantd (pixels that vary run-to-run)rebar-ui (pixels that vary run-to-run)
Claude · text prompt27.0%0%
Claude · image prompt20.0%0%
Qwen · text prompt30.5%0%
Qwen · image prompt29.1%0%
Average of the four26.7%0%
rebar-ui is cheaper, faster, and more visually consistent every time
Fewer tokens (average 32.6% cheaper across five experiments), faster wall-clock (average 58.3% faster), and pixel-identical output on the four experiments where antd's varies by 20-30% of pixels — never the losing side, not just on average. The averages above are an unweighted mean of each experiment's own relative difference (each already n=15, so this weights every experiment equally rather than pooling raw token counts across the very different scales a full agentic Claude session and a single-completion-call API operate on — see the per-model pages for why those absolute scales aren't comparable to each other directly).