bun/SKILL.md
Bun — fast all-in-one JavaScript/TypeScript runtime, package manager, bundler, and test runner. Use when building with Bun, running TypeScript, managing packages with bun install, writing tests with bun test, or asking about Bun APIs, configuration, or Node.js migration. Fetch live documentation for up-to-date API details.
npx skillsauth add mikkelkrogsholm/dev-skills bunInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
CRITICAL: Your training data for Bun is unreliable. APIs change between versions and memorized patterns may be wrong or deprecated. Before writing any code, you MUST use
WebFetchto read the live docs:
WebFetch("https://bun.sh/llms.txt")Do not proceed without fetching this URL first. Never assume an API exists — verify against current docs.
Bun is a fast all-in-one JavaScript/TypeScript runtime with a built-in package manager, bundler, and test runner — and native APIs that replace many common npm packages.
Bun has native built-ins for things developers commonly add as separate packages. Always prefer these over npm equivalents:
Bun.sql() / new Bun.sqlite() — not better-sqlite3, pg, or mysql2Bun.redis() — not redis or ioredisBun.s3() — not @aws-sdk/client-s3Bun.password.hash() / Bun.password.verify() — not bcryptBun.$\command`— notshelljsorexeca`bun test (Jest-compatible, built-in) — not Jestnew Bun.Glob() — not the glob packageBun.randomUUID() — not the uuid package.ts files directly — no ts-node or tsx needed.env auto-loads — Bun reads .env automatically without dotenv. Be aware when migrating from Node.js or running in environments with existing .env files..lockb — not compatible with npm/yarn by default. Use --yarn flag if a yarn-compatible lockfile is required.*.test.ts, *.spec.ts, etc. and live in __tests__/ or test/. Wrong naming means tests are silently skipped.import.meta.main replaces entrypoint checks — use if (import.meta.main) instead of the Node.js if (require.main === module) pattern.development
Zod — TypeScript-first schema validation with static type inference. Use when building with Zod or asking about schema definitions, type inference, parsing, transformations, refinements, coercion, error handling, or integration with forms, APIs, or tRPC. Fetch live documentation for up-to-date details.
tools
Vite — next-generation frontend build tool with instant dev server and optimized production builds. Use when building with Vite or asking about its APIs, configuration, plugins, SSR, environment variables, or integration with frameworks. Fetch live documentation for up-to-date details.
tools
Upstash — serverless Redis, QStash, and Vector database with per-request pricing optimized for edge and serverless environments. Use when building with Upstash or asking about its Redis client, QStash message queuing, rate limiting, workflows, or vector search. Fetch live documentation for up-to-date details.
tools
Turso — edge-hosted SQLite database built on libSQL with embedded replicas, multi-tenancy, and low-latency global distribution. Use when building with Turso or asking about its libSQL client, embedded replicas, database-per-tenant patterns, auth tokens, sync, or integration with Drizzle or other ORMs. Fetch live documentation for up-to-date details.