Development Workflow
Common commands, linting, formatting, and type-checking scripts.
VibeKit uses Turborepo and Biome to ensure fast local development and instant code formatting.
Everyday commands
| Command | Purpose |
|---|---|
bun run dev | Starts all apps and packages in watch mode with live reload. |
bun run build | Builds production artifacts for all workspaces in the monorepo. |
bun run lint | Checks lint rules; bun run format:check separately checks formatting. |
bun run format | Automatically formats all TypeScript, React, and JSON files with Biome. |
bun x turbo type-check | Type-checks all packages and apps without emitting JS files. |
bun run agent:schema | Generates machine-readable JSON schema of database models & tRPC API routers. |
bun run agent:diagnose | Generates structured JSON diagnostics of TypeScript and Biome issues for AI agents. |
bun run clean | Cleans up Turborepo cache and build output directories. |
Pre-commit verification
Run these three checks before committing changes:
bun run lint
bun x turbo type-check
bun run buildLearn how to modify database models in Database Migrations.
Updating a customized site
Use the update-to-latest-template skill with verified archives for your current upstream baseline and the target release. It compares those pristine releases with your site, preserves custom behavior and removed features, and records unresolved changes so an interrupted update can resume.
Read the target release's UPGRADE.md and vibekit-release.json first. An empty supportedFrom list means no complete upgrade path is certified. The read-only helper at scripts/template-upgrade.mjs checks archive hashes and classifies differences; it does not merge files or migrate databases.
Keep the customer-owned vibekit-template.json baseline unchanged until reconciliation and product checks pass. Updating source does not authorize deployment or production database changes.