@cowtech/typescript-config

Cowtech's Typescript configuration

View on GitHub

Introduction

%s %s

CowTech TypeScript configuration

https://sw.cowtech.it/typescript-config

Usage

npm install @cowtech/typescript-config

Then extend it in your project's tsconfig.json:

{ 
  "extends": "@cowtech/typescript-config", 
  "compilerOptions": { 
    "outDir": "./dist", 
    "rootDir": "./src" 
  }, 
  "include": ["src/**/*"], 
  "exclude": ["node_modules", "dist"] 
}

Configuration Settings

General Settings

Setting Value Description
target ESNext Compile to the latest ECMAScript standard for maximum performance
lib ["ESNext"] Include latest ECMAScript library features

Module Settings

Setting Value Description
module NodeNext Use Node.js ESM module resolution for modern applications
moduleResolution NodeNext Enable Node.js 16+ module resolution algorithm
skipLibCheck true Skip type checking of declaration files for faster builds
esModuleInterop true Enable CommonJS/ES module interoperability
allowSyntheticDefaultImports true Allow default imports from modules without default exports
allowImportingTsExtensions true Allow importing .ts files directly
rewriteRelativeImportExtensions true Automatically rewrite import extensions
allowJs false Enforce TypeScript-only codebase for type safety

Language Settings (Type Safety)

Setting Value Description
strict true Enable all strict type checking options
strictNullChecks true Enforce strict null and undefined checking
noImplicitAny true Raise error on expressions with implied any type
noUnusedLocals true Report errors on unused local variables
noUnusedParameters true Report errors on unused function parameters
useUnknownInCatchVariables false Use any type for catch clause variables (for compatibility)

Transpilation Settings

Setting Value Description
removeComments true Remove comments from compiled output for smaller bundles
newLine lf Use Unix-style line endings for consistency
verbatimModuleSyntax true Preserve module syntax more accurately in output
erasableSyntaxOnly true Allow removal of only erasable syntax for cleaner code

Contributing to @cowtech/typescript-config

Copyright

Copyright (C) 2025 and above Shogun shogun@cowtech.it.

Licensed under the MIT license, which can be found at https://choosealicense.com/licenses/isc.