bts.jsonc
O que o bts.jsonc faz e por que importa
O que é?
bts.jsonc é um pequeno arquivo de configuração gravado na raiz do projeto quando você o cria. Ele registra as escolhas de stack (frontend, backend, API, DB/ORM, auth, addons etc.). O arquivo usa JSONC (JSON com comentários) e inclui um schema para dicas no editor.
Onde: ./bts.jsonc
Por que existe
- Necessário para o comando
adddetectar a stack atual - Ajuda a validar compatibilidade e pré-preencher padrões sensatos
Se bts.jsonc estiver ausente, o comando add não consegue rodar porque o projeto não pode ser detectado.
Seguro apagar (com ressalva)
É seguro apagar no desenvolvimento normal; o código gerado em apps/* e packages/* continua sendo a fonte da verdade. Porém, se planejar usar o comando add depois, você deve manter o bts.jsonc (ou recriá-lo) para a CLI detectar o projeto.
Formato
O arquivo é JSONC com comentários habilitados e inclui uma URL $schema para tooling.
// kubojs configuration file
// safe to delete
{
"$schema": "https://r2.kubojs.dev/schema.json",
"version": "x.y.z",
"createdAt": "2025-01-01T00:00:00.000Z",
"reproducibleCommand": "bun create kubojs@latest create-json --input '{...}'",
"frontend": ["tanstack-router"],
"backend": "hono",
"runtime": "bun",
"database": "sqlite",
"orm": "drizzle",
"api": "trpc",
"auth": "better-auth",
"addons": ["turborepo"],
"addonOptions": {
"wxt": {
"template": "react",
},
},
"examples": [],
"dbSetup": "none",
"dbSetupOptions": {
"mode": "manual",
},
"webDeploy": "none",
"serverDeploy": "none",
"packageManager": "bun",
}Observações:
- Os valores espelham o que você selecionou na criação do projeto
reproducibleCommandcontém o comando exato para recriar este projeto- Quando há opções estruturadas, o comando reproduzível usa
create-json addonOptionsguarda configuração aninhada de addons orientados por promptsdbSetupOptionsguarda o comportamento estruturado de setup de banco para automação- O arquivo pode ser atualizado ao rodar
add(addons e config específica de addon)
Veja também: comando add