# tsconfig.json · versecafe/ashlar

[View on GitCafe](https://git.cafe/versecafe/ashlar/blob/a25e89740b0578231d84ca10361382e6acb04bc2/tsconfig.json)

Repository: [versecafe/ashlar](https://git.cafe/versecafe/ashlar)

Visibility: public

Requested revision: a25e89740b0578231d84ca10361382e6acb04bc2

Requested commit: a25e89740b0578231d84ca10361382e6acb04bc2

Commit: a25e89740b0578231d84ca10361382e6acb04bc2

Blob: f4470223649152540f3287e188ab2dad34fd0ae9

Size: 888 bytes

[Immutable source](https://git.cafe/versecafe/ashlar/blob/a25e89740b0578231d84ca10361382e6acb04bc2/tsconfig.json?format=markdown)

```
{
	"compilerOptions": {
		// Environment setup & latest features
		"lib": ["ESNext"],
		"target": "ESNext",
		"module": "Preserve",
		"moduleDetection": "force",
		"allowJs": true,

		// Bundler mode
		"moduleResolution": "bundler",
		"allowImportingTsExtensions": true,
		"verbatimModuleSyntax": true,
		"noEmit": true,

		// Best practices
		"strict": true,
		"skipLibCheck": true,
		"noFallthroughCasesInSwitch": true,
		"noUncheckedIndexedAccess": true,
		"noImplicitOverride": true,
		"noUnusedLocals": true,
		"noUnusedParameters": true,

		// JSX → universal Solid renderer. `preserve` leaves JSX for
		// babel-preset-solid (universal) to lower; types resolve from this
		// package's own jsx-runtime.d.ts via self-referencing exports.
		"jsx": "preserve",
		"jsxImportSource": "ashlar",
		"types": ["bun-types"]
	},
	"include": ["src", "scripts", "demo", "jsx-runtime.d.ts"]
}

```
