DEV Community

Alex Spinov
Alex Spinov

Posted on

Bun 1.2 Just Made Node.js Feel Slow — Here's What Changed

Bun 1.2 Dropped and It's a Big Deal

Bun 1.2 brought full Node.js compatibility, a built-in S3 client, Postgres driver, and significant performance improvements. If you've been waiting to switch from Node.js, this might be the release that tips you over.

What's New

1. Full Node.js Compatibility

Bun now passes 90%+ of Node.js test suite. The remaining gaps are edge cases most apps never hit:

# Your existing Node.js app probably just works now
bun run server.js  # Drop-in replacement
Enter fullscreen mode Exit fullscreen mode

2. Built-in S3 Client

No more installing @aws-sdk/client-s3. Bun has it built in:

const file = Bun.s3("my-bucket/data.json");
const data = await file.json();

// Upload
await Bun.s3("my-bucket/output.json").write(JSON.stringify(results));
Enter fullscreen mode Exit fullscreen mode

That's it. No configuration objects, no credential chains, no 50MB SDK.

3. Built-in Postgres

import { sql } from "bun";

const users = await sql`SELECT * FROM users WHERE active = true`;
Enter fullscreen mode Exit fullscreen mode

No pg package. No connection pool setup. Tagged template literals with automatic parameterization.

4. Performance Numbers

Operation Node.js 22 Bun 1.2 Speedup
HTTP server (req/s) 48,000 112,000 2.3x
File read (1GB) 850ms 320ms 2.7x
JSON parse (100MB) 1.2s 0.4s 3x
npm install 12s 2.1s 5.7x

Should You Switch?

Yes, if:

  • You're starting a new project
  • You need S3/Postgres without dependency bloat
  • Install speed matters (CI/CD pipelines)
  • You're building APIs where req/s matters

Not yet, if:

  • You rely on native Node.js addons (some still break)
  • You use niche npm packages that depend on Node.js internals
  • You're in a regulated environment that requires LTS guarantees

Quick Migration Test

# Install Bun
curl -fsSL https://bun.sh/install | bash

# Test your existing project
cd your-project
bun install  # Replace npm install
bun run dev  # Replace node/npm run dev

# If it works, you're done. If not, check:
bun --bun run dev  # Force Bun runtime for all dependencies
Enter fullscreen mode Exit fullscreen mode

The Bigger Picture

Bun isn't just faster Node.js. It's becoming a platform:

  • Runtime + bundler + test runner + package manager
  • Built-in S3, Postgres, SQLite
  • Native TypeScript (no compilation step)

Deno went the standards route. Bun went the batteries-included route. Both are making Node.js better by forcing it to compete.


I write about developer tools and APIs. Follow for more.


More from me: 10 Dev Tools I Use Daily | 77 Scrapers on a Schedule | 150+ Free APIs

Top comments (0)