Skills
Skillsbun-first

bun-first

SeedPublic
ProjectEngineering

Describes efficient usage of Bun and Bun APIs instead of Node.js (and its APIs)

At a glance

  • Source: community
  • Category: engineering
  • Scope: project
  • User-invocable: no

Location

.claude/skills/bun-first/


Auto-generated by scripts/sync-skills-content.ts. Add your own notes below — re-runs preserve the body and your soft frontmatter fields.

SKILL.md

.claude/skills/bun-first/SKILL.md

41 lines
Raw
---
name: bun-first
description: Describes efficient usage of Bun and Bun APIs instead of Node.js (and its APIs)
---

# Bun-First Development

We default to **Bun** as our JavaScript runtime, package manager, and task runner.
Assume Bun is available unless explicitly stated otherwise.

## General Principles

- **PREFER** Bun over Node.js, npm, pnpm, or yarn
- **PREFER** Bun’s built-in features over third-party tools when available
- **PRFER** Bun's native APIs (eg for file access, SQL, S3 etc) over Node.js APIs

## Package Management

- **USE** `bun install`, `bun add`, `bun remove`
- **AVOID** `npm`, `yarn`, `pnpm`
- Prefer Bun-native lockfiles and resolution behavior
- Keep dependencies minimal and intentional

## Scripts & Tooling

- **PREFER** `bun run` for scripts
- **AVOID** Bun’s built-in test runner (`bun test`) => We'll use `Vitest` for testing
- **AVOID** Bun’s build tool (`bun build`) => We'll use Vite
- Avoid introducing extra task runners unless required

## Runtime & APIs

- **PREFER** Bun’s native APIs (fetch, fs, path, env handling)
- Write code assuming modern Web APIs are available in the runtime
- Avoid Node-specific APIs unless explicitly required

## Performance & DX

- Prefer simple, explicit scripts over complex toolchains
- **AVOID** unnecessary abstractions

Install it elsewhere with curl -o .claude/skills/bun-first/SKILL.md --create-dirs https://uxlab.designcoder.net/api/skills/bun-first/source. Record what you changed in this page's notes.

  • a: Appearance
  • ?: Keyboard shortcuts