| description | globs | alwaysApply |
|---|---|---|
Use Bun instead of Node.js, npm, pnpm, or vite. |
*.ts, *.js, package.json |
false |
Default to using Bun instead of Node.js.
- Use
bun <file>instead ofnode <file>orts-node <file> - Use
bun testinstead ofjestorvitest - Use
bun installinstead ofnpm installoryarn installorpnpm install - Use
bun run <script>instead ofnpm run <script>oryarn run <script>orpnpm run <script> - Use
bunx <package> <command>instead ofnpx <package> <command> - Bun automatically loads .env, so don't use dotenv.
- Prefer
Bun.fileovernode:fs's readFile/writeFile Bun.$instead of execa for shell commandsbun:sqlitefor SQLite if needed
Use bun test to run tests.
import { test, expect } from "bun:test";
test("hello world", () => {
expect(1).toBe(1);
});E2E tests run against the real Linear API using the downstairs-dawgs workspace. To run e2e tests:
LINEAR_API_KEY=$(cat ~/.config/linproj/workspaces/c650d32a-125e-4cb7-83b4-b57cc2d457f2.json | jq -r '.auth.apiKey') bun test tests/e2eThe UUID c650d32a-125e-4cb7-83b4-b57cc2d457f2 is the Linear workspace ID for downstairs-dawgs. This ensures tests run against the correct workspace.