--- title: bts.jsonc description: What bts.jsonc does and why it matters --- ## What is it? `bts.jsonc` is a small config file written to your project root when you create a project. It captures the stack choices you selected (frontend, backend, API, DB/ORM, auth, addons, etc.). The file uses JSONC (JSON with comments) and includes a schema for editor hints. Where: `./bts.jsonc` ## Why it exists - Required for the `add` command to detect your current stack - Helps validate compatibility and pre‑fill sensible defaults If `bts.jsonc` is missing, the `add` command cannot run because the project cannot be detected. ## Safe to delete (with a caveat) It’s safe to delete for normal development; the generated code in `apps/*` and `packages/*` remains the source of truth. However, if you plan to use the `add` command later, you must keep `bts.jsonc` (or recreate it) so the CLI can detect your project. ## Format The file is JSONC with comments enabled and includes a `$schema` URL for tooling. ```jsonc // Better-T-Stack configuration file // safe to delete { "$schema": "https://r2.better-t-stack.dev/schema.json", "version": "x.y.z", "createdAt": "2025-01-01T00:00:00.000Z", "frontend": ["tanstack-router"], "backend": "hono", "runtime": "bun", "database": "sqlite", "orm": "drizzle", "api": "trpc", "auth": "better-auth", "addons": ["turborepo"], "examples": [], "dbSetup": "none", "webDeploy": "none", "packageManager": "bun" } ``` Notes: - Values mirror what you selected during project creation - The file may be updated when you run `add` (e.g., addons or webDeploy) See also: [`add` command](/docs/cli#add)