DEV Community

Alex Spinov
Alex Spinov

Posted on

Bun Has a Free API Runtime — JavaScript at Native Speed

Bun is an all-in-one JavaScript runtime that is 4x faster than Node.js. It bundles a runtime, package manager, bundler, and test runner in a single tool.

What Is Bun?

Bun is a drop-in Node.js replacement written in Zig and JavaScriptCore. It starts faster, runs faster, and installs packages faster.

Built-in:

  • Runtime (Node.js compatible)
  • Package manager (25x faster than npm)
  • Bundler
  • Test runner
  • SQLite driver
  • HTTP server

Quick Start

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

# Run any JS/TS file
bun run index.ts

# Install packages (25x faster than npm)
bun install express

# Run tests
bun test
Enter fullscreen mode Exit fullscreen mode

HTTP Server API

// server.ts — no dependencies needed!
Bun.serve({
  port: 3000,
  fetch(req) {
    const url = new URL(req.url);

    if (url.pathname === "/api/hello") {
      return Response.json({ message: "Hello from Bun!" });
    }

    if (url.pathname === "/api/users" && req.method === "POST") {
      const body = await req.json();
      return Response.json({ created: true, user: body }, { status: 201 });
    }

    return new Response("Not Found", { status: 404 });
  }
});

console.log("Server running on port 3000");
Enter fullscreen mode Exit fullscreen mode

Built-in SQLite

import { Database } from "bun:sqlite";

const db = new Database("app.db");
db.run("CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY, name TEXT)");
db.run("INSERT INTO users (name) VALUES (?)", ["Alice"]);

const users = db.query("SELECT * FROM users").all();
console.log(users);
Enter fullscreen mode Exit fullscreen mode

Use Cases

  1. API servers — faster than Express on Node
  2. Scripts — run TS directly, no config
  3. Package management — fastest installs
  4. Testing — built-in test runner
  5. Full-stack apps — runtime + bundler + DB

Bun vs Node.js

Feature Bun Node.js
Startup time 4x faster Baseline
HTTP throughput 3-4x more Baseline
Package install 25x faster npm
TypeScript Native Need tsx
SQLite Built-in Need pkg
Test runner Built-in Need Jest

Need web data at scale? Check out my scraping tools on Apify or email spinov001@gmail.com for custom solutions.

Top comments (0)