Real numbers, reproducible.
Reproducible workloads with published methodology — bext's native Rust path and PRISM against familiar runtimes and SSR engines.
Request throughput
PRISM against SSR engines
The same 38.3 KB Tailwind catalog page, the same data, and byte-validated HTML. Warm synchronous render CPU time on Bun 1.3.13, pinned to one core.
The safe JS ceiling escapes the same dynamic values: at 15.7 versus 15.8 µs, compiled PRISM matches it within measurement noise. PRISM direct h(): 69.3 µs average / 62.1 µs p50. Automatic JSX: 75.3 / 67.9 µs. Solid keeps a slightly lower p50 (61 µs), while PRISM has the lower average; they remain in the same band. Compiled PRISM is about 2.4× ahead of Marko and 116× ahead of React.
vs Deno, Bun & Node
Same machine, same work — a plain-text "Hello, World!" (GET) and a bearer-authenticated JSON API (POST: validate the token, parse the JSON body, return JSON). bext's native Rust path vs Deno.serve, Bun.serve & node:http, oha @ 100.
bext 152.7K / 134.8K req/s (hello / api) · Deno 2.8.3 80.5K / 57.7K · Bun 1.3 74.9K / 53.8K · Node 25 42.2K / 29.0K. AMD Ryzen 9 5900X, oha 1.14.0, 100 connections, best of 2.
Methodology
The TSX shootout measures warm synchronous render CPU time on Bun 1.3.13, pinned to one core, after byte validation; close paths use alternating series and their median. HTTP page benchmarks use autocannon (10 connections, 30 seconds). The runtime comparison uses oha at 100 connections (5s warmup, best of 2).
# Reproduce these benchmarks yourself
autocannon -c 10 -d 30 http://localhost:3000/
autocannon -c 10 -d 30 http://localhost:3000/api/data
autocannon -c 10 -d 30 http://localhost:3000/ssr-pageMeasure it yourself.
One command to install, one to deploy. Run bext on your own hardware and compare.