@significa/tsconfig
v0.1.0
Published
Significa's shared TypeScript configurations.
Keywords
Readme
@significa/tsconfig
Significa's shared TypeScript configurations. Four variants, all strict, all noEmit (Biome handles syntax; tsc handles type-checking only).
Install
pnpm add -D -E @significa/tsconfig typescriptVariants
base — neutral foundation
Strict mode, target: ES2023, module: preserve, noEmit, verbatimModuleSyntax, erasableSyntaxOnly. No DOM lib, no JSX, no allowImportingTsExtensions. Pick this only if your code is truly runtime-agnostic (rare). Most projects extend react, astro, or node directly.
{
"extends": "@significa/tsconfig/base",
"include": ["src"]
}react — TanStack Start, Vite React
Extends base. Adds DOM lib, jsx: react-jsx, allowImportingTsExtensions.
{
"extends": "@significa/tsconfig/react",
"include": ["src", "vite.config.ts"]
}astro — Astro projects
Extends base. Adds DOM lib, jsx: preserve, allowImportingTsExtensions. Pre-includes ${configDir}/.astro/types.d.ts and ${configDir}/**/*, excludes dist.
{
"extends": "@significa/tsconfig/astro",
"compilerOptions": {
"paths": { "@/*": ["./src/*"] }
}
}node — Drizzle scripts, CLIs, tsx-run code, API-only services
Extends base. Swaps to module: NodeNext + moduleResolution: NodeNext, adds types: ["node"]. No DOM lib (the base default is fine for Node).
{
"extends": "@significa/tsconfig/node",
"include": ["src", "scripts"]
}