bun

Original🇺🇸 English
Translated

Use Bun instead of Node.js, npm, pnpm, or vite. Provides command mappings, Bun-specific APIs, and development patterns.

3installs
Added on

NPX Install

npx skill4agent add brianlovin/claude-config bun

Tags

Translated version includes tags in frontmatter

Bun Runtime

Use Bun as the default JavaScript/TypeScript runtime and package manager.

Command Mappings

Instead ofUse
node file.ts
bun file.ts
ts-node file.ts
bun file.ts
npm install
bun install
npm run script
bun run script
jest
/
vitest
bun test
webpack
/
esbuild
bun build
Bun automatically loads
.env
files - don't use dotenv.

Bun-Specific APIs

Prefer these over Node.js equivalents:
APIPurposeDon't use
Bun.serve()
HTTP server with WebSocket, HTTPS, routesexpress
bun:sqlite
SQLite databasebetter-sqlite3
Bun.redis
Redis clientioredis
Bun.sql
Postgres clientpg, postgres.js
Bun.file()
File operationsnode:fs readFile/writeFile
Bun.$\
cmd``
Shell commandsexeca
WebSocket
WebSocket client (built-in)ws

Testing

Use
bun:test
for tests:
ts
import { test, expect } from "bun:test";

test("description", () => {
  expect(1).toBe(1);
});
Run with
bun test
.

Frontend Development

Use HTML imports with
Bun.serve()
instead of Vite. Supports React, CSS, Tailwind.
Server:
ts
import index from "./index.html"

Bun.serve({
  routes: {
    "/": index,
    "/api/users/:id": {
      GET: (req) => Response.json({ id: req.params.id }),
    },
  },
  development: { hmr: true, console: true }
})
HTML file:
html
<html>
  <body>
    <script type="module" src="./app.tsx"></script>
  </body>
</html>
Bun's bundler transpiles
.tsx
,
.jsx
,
.js
automatically. CSS is bundled via
<link>
tags.
Run with
bun --hot ./server.ts
for HMR.

Documentation

For detailed API docs, see
node_modules/bun-types/docs/**.md
.