- Much faster
/api/*render path: route discovery and the compiled bundle are now cached per route, removing the per-request filesystem walk. Master syscalls drop from ~67 to ~15 per request. bext runis fast out of the box: multiplexed render-worker pool by default (BEXT_V8_POOL), a quiet production log level, and shared-memory IPC for response bodies (BEXT_V8_SHM_IPC). The old default serialized renders through one worker; a single render thread now sustains far more small requests.- In-process render database access: tuned SQLite pragmas (WAL,
synchronous=NORMAL, mmap) and a batched query primitive (__dbQueryEach) that runs N reads in one V8 crossing and writes in a single transaction.
Release notesBuilt in the open.
Built in the open.
Always moving.
Follow the changes to bext. Browse releases, see what has improved, and explore the work behind the engine.
View GitHub releasesFIG. 10 / CHANGELOG
Another side of the engine.
IN THIS CHAPTER01New capabilities02Improvements03Fixes
On this page
- Qwik-style resumable islands (
"use resumable"directive): the component runs ONCE on the server; the client reconstructs signals from serialized values — without ever re-running the component. Handlers are lifted at compile time into a__resumefactory map. - ~0.6KB gzip per island, a shared ~3KB gzip resume runtime cached once. An island bundle dropped from
123KB → 1,522 bytesby splitting the runtime from island-specific code. { lazy: true }mode: zero bytes of island JS before first interaction — a qwikloader-style loader fetches the bundle, resumes state, and replays the event.- State-preserving HMR:
window.__bextHmr.swapIsland(name)hot-swaps an island's code in place (snapshot → re-render → swap → resume); state survives the edit, with no full reload. - AST-safe JS minifier (
bext_core::runtime::minify_js) + per-route composed source maps (BEXT_PRISM_SOURCEMAPS). - Client router (SPA soft-nav, View Transitions, prefetch) and a testing library (
@bext-stack/framework/testingover happy-dom).
- Streaming SSR for V8: React 19
renderToReadableStreamdriven by a custom Rust event-loop driver. Async server components,<Suspense>, and theuse(promise)hook all work natively. - React Server Components Flight payload pipeline via
react-server-dom-parcel. Per-route RSC bundle compiled with--conditions=react-server, server-only React inlined, and exposed at/__bext/rsc/<path>. - Mode-aware page-context cache so SSR HTML and RSC Flight contexts coexist on the V8 eval thread.
- Bundler matrix: both bun (warm worker pool) and turbopack (in-process Rust) work in sync and streaming modes against the new SSR harness.
redirect()andnotFound()translated to HTTP 307/404 viaError.prototype.digestcapture, dynamic API params delivered via the second handler argument, per-layout-chain shell cache key.- New SSR development harness in
harnesses/ssr-dev/: 33 base + 10 streaming HTTP-level tests against a self-contained Next.js fixture app, plus a standalone RSC pipeline smoke test.
- Integrated utoo toolchain: built-in package manager, Turbopack bundler, and browser toolchain.
bext ut— full pass-through to the utoo package manager (install, run, publish, and 16 more commands).bext pack— Turbopack-powered bundler for production builds and dev serving.bext web— browser-based toolchain via WASM for playgrounds and sandboxes.- Top-level PM shortcuts:
bext install,bext x,bext publish, and more. bext upgradenow self-updates from the release server with automatic hot-swap.bext downloadfetches companion tool binaries for your platform.
- License-gated monetization with Community, Pro, and Enterprise tiers.
- New
bext-licensecrate with Ed25519 offline license validation. bext-keygenCLI tool for license generation and management.- Runtime feature gating based on license tier.
bext-server licenseCLI subcommand for license status, activation, and validation.
- Framework adapters for Laravel, Symfony, and PHP micro-framework.
- Comprehensive module documentation and project restructure.
- nginx masquerade mode: full nginx impersonation with shim binary, PID file, SIGHUP reload, cache purge API, and systemd override.
- HTTP/3 QUIC support with 0-RTT connection resumption.
- AST-based cache directive transform.
- 99% conformance score (135/136 checks).
- Dev HMR with file watching and instant reload.
- CLI shell completions for bash, zsh, fish, and PowerShell.
- OpenTelemetry spans for request tracing and observability.
- Admin panel with real-time dashboard SSE streaming.
- nginx compatibility layer supporting 68/70 directives.
- Drop-in
nginx.confparsing and serving with zero config changes. - Embedded PHP runtime with custom SAPI achieving 16K+ req/s.
- eBPF acceleration with XDP packet filter and kernel tracing.
- Companion desktop app for local development and monitoring.
- Multi-app platform with deploy pipeline and hostname-based routing.
- 3-tier plugin sandbox: WASM (wasmtime), QuickJS, and nsjail process isolation.
- Durable flow engine backed by SQLite WAL for crash-recoverable workflows.
- Real-time SSE and WebSocket hub with pub/sub channels.
- WAF with GeoIP filtering, bot detection, and DDoS mitigation.
- Initial release of the bext core runtime.
- ISR caching with stale-while-revalidate and stampede guard.
- Auto-TLS via ACME with SNI routing and OCSP stapling.
- HTTP/2 with streaming SSR support.
- On-the-fly image optimization and format conversion.
- SEO utilities including sitemap generation and meta tag injection.
Ready to get started?
One command to install, one to deploy. bext runs in production from the very first minute.