# CLAUDE.md ## Commands ```bash # Root commands (via Turborepo) bun run dev # Start API, Vite dev, and Expo dev servers bun run dev:docs # Start the fumadocs/Next.js dev server bun run build # Production build (both apps) bun run lint # Oxlint lint check bun run format # Oxfmt format (auto-fix) bun run check-types # TypeScript type check bun run test # Run tests bun run generate:openapi # Regenerate OpenAPI spec + docs API pages (run after contract/schema changes) bun run i18n:extract # Run LingUI's string extraction bun run i18n:claude # Prompt Claude Code to fill in untranslated strings # Database commands (run from packages/db/) cd packages/db && bun run db:push # Push schema changes to SQLite database cd packages/db && bun run db:generate # Generate Drizzle migration files cd packages/db && bun run db:migrate # Run Drizzle migrations cd packages/db && bun run db:studio # Open Drizzle Studio (visual DB browser) ``` **Use Bun, not Node.js** — `bun `, `bun install`, `bun run