← Engineering
Runtime May 2026 Rowan Ware

Why Bun?.

Every runtime decision is a bet. Here's why I chose Bun for every Circus backend service — and what it's been like running it.

Bun

When I started building Circus, the question wasn’t “should I use Node?” — it was “do I have a reason not to?” Bun gave me one.

What Bun is

  • 4× faster cold starts than Node.js — processes start and restart without noticeable blips
  • Native TypeScript and JSX — run .ts, .tsx, .jsx directly; no transpile step, no ts-node
  • ESM and CommonJS — fully compatible with both; the npm ecosystem just works
  • Web-standard APIsfetch, WebSocket, ReadableStream built in, powered by JavaScriptCore (Safari’s engine)
  • Node.js compatibleprocess, Buffer, path, fs, http all work as expected

Fast

Bun’s startup time is consistently under 20ms on our services. That means restarts during deploys don’t cause noticeable blips in request handling. Package installs are fast too — when you’re cloning a service in CI, Bun’s package manager speed adds up across a fleet.

Cold start time (ms) — lower is better. Source: bun.sh

Node.js~120msDeno~38msBun~30ms

Bun over time

Bun’s npm weekly downloads have grown from near-zero at launch to millions per week. It’s not a niche pick anymore.

6M4M2M1MQ4 22200KQ2 23600KQ4 231.3MQ2 242.1MQ4 243.8MQ1 265M+

Weekly npm downloads — npmtrends.com, 2022–2026 (approximate).

TypeScript and Bun adoption

Among professional developers, TypeScript is now the default. Bun’s growth tracks alongside it.

TypeScript (JS devs)78%Node.js (runtime)71%Bun (runtime)24%Deno (runtime)12%

Adoption among professional JavaScript/TypeScript developers — Stack Overflow Developer Survey 2024.

Widely used

Bun’s picked up fast. The npm ecosystem is fully compatible, so you’re not giving anything up. Every major cloud platform supports it. The npm ecosystem works without changes. And coding AIs know it deeply — which matters when you’re building fast and relying on AI to keep pace.

Built on Bun

These aren’t hobby projects — they’re the tools serious TypeScript teams use every day:

  • Claude Code — Anthropic’s agentic coding CLI; the tool in the Circus dev workflow
  • Prisma — the most widely used TypeScript ORM; their CLI and engine tooling run on Bun
  • Biome — fast JS/TS formatter and linter, replacing Prettier and ESLint for many teams

In production

All Circus backend services run on Bun. It’s been reliable, the development feedback loop is fast enough that we don’t think about it, and we haven’t had a production incident we could pin on the runtime. That’s the bar.

If you haven’t seen it yet, Fireship’s video is the fastest way to get why Bun is a big deal: