tsconfig

Installation
SKILL.md

tsconfig conventions

Every package here is source-only .ts: exports point at ./src/*.ts, there is no build step, and consumers (Bun, Vite, Tauri, the Cloudflare Worker) operate on raw .ts. That single fact decides the whole config.

The exceptions are the audience, not the package. packages/workspace and packages/field are published for toolchains we do not control, so shipping source would subject them to a stranger's compiler settings. They emit .js and .d.ts, and their exports point at ./dist. Each leaf tsconfig.json is an ordinary tier from the table below; the emit lives in a sibling tsconfig.build.json that extends the leaf and turns on exactly what emitting needs (noEmit: false, outDir, rootDir, declaration, types: []). Do not add outDir, declaration, or noEmit: false to any leaf. If another package earns a build, copy that split.

The one rule

Installs
6
GitHub Stars
4.8K
First Seen
May 30, 2026