newX 1.3: islands to disk, server-mode islands, and an image proxy

Documentation

Everything you need to build with X

A fullstack framework for Bun. Static sites, server-rendered pages, API routes, and server functions, all in a single process.

Start here

Packages

Guides

Routing

File-based routing: static pages, dynamic segments, nested routes.

Get started

Pages & Loaders

Static pages, server-rendered pages, and data loading.

Get started

Layouts

Nested layouts, dedicated layout directories, and root layouts.

Get started

API Routes

Build REST endpoints alongside your frontend pages.

Get started

Server Functions

Call server-side functions from the browser without REST.

Get started

Islands

Selective hydration: ship JS only for the interactive parts.

Get started

Incremental Static Regeneration

Static pages that revalidate on a timer or on demand.

Get started

Client Navigation & Images

SPA-style navigation on every <a> tag by default, plus the remote image proxy.

Get started

Content Collections

Markdown files with frontmatter that become routes.

Get started

Middleware

Route-level middleware for auth, redirects, and validation.

Get started

Data Layer

SQLite and PostgreSQL integration with migrations.

Get started

Build & Deploy

Production builds, static export, and deployment.

Get started

Configuration

x.config.ts reference: all options and defaults.

Get started

Security

Env isolation, CSRF protection, security headers, and rate limiting.

Get started

Observability

Structured logging, health probes, and APM error tracing.

Get started

Audit Trail

Structured security event logging with automatic secret redaction.

Get started

Request Tracing

OTel-compatible request-scoped tracing with correlation IDs.

Get started

Secret Redaction

Automatic masking of bearer tokens, passwords, and API keys in logs.

Get started

Backpressure

Per-process admission control to limit concurrent requests.

Get started

These docs are authored as .tsx components because many pages embed interactive code blocks with syntax highlighting, structured card layouts, and styled callouts that plain Markdown can't express. The rendered output is fully static — every page exports mode = "static" and prerenders to HTML at build time.