
Security News
Potemkin Understanding in LLMs: New Study Reveals Flaws in AI Benchmarks
New research reveals that LLMs often fake understanding, passing benchmarks but failing to apply concepts or stay internally consistent.
@total-typescript/tsconfig
Advanced tools
A collection of TypeScript configurations, based on Total TypeScript's TSConfig Cheat Sheet
@total-typescript/tsconfig
tsconfig.json
can seem extremely scary. But really, it's only 2 or 3 decisions you need to make.
This package makes those decisions even easier. Based on my TSConfig Cheat Sheet.
npm install --save-dev @total-typescript/tsconfig
Choose which tsconfig.json
you need from the list below.
Add it to your tsconfig.json
:
{
// I'm building an app that runs in the DOM with an external bundler
"extends": "@total-typescript/tsconfig/bundler/dom/app"
}
The tricky thing about tsconfig.json
is there is not a single config file that can work for everyone. But, with two or three questions, we can get there:
tsc
To Turn Your .ts
Files Into .js
Files?If yes, use this selection of configs:
{
// My code runs in the DOM:
"extends": "@total-typescript/tsconfig/tsc/dom/app", // For an app
"extends": "@total-typescript/tsconfig/tsc/dom/library", // For a library
"extends": "@total-typescript/tsconfig/tsc/dom/library-monorepo", // For a library in a monorepo
// My code _doesn't_ run in the DOM (for instance, in Node.js):
"extends": "@total-typescript/tsconfig/tsc/no-dom/app", // For an app
"extends": "@total-typescript/tsconfig/tsc/no-dom/library", // For a library
"extends": "@total-typescript/tsconfig/tsc/no-dom/library-monorepo" // For a library in a monorepo
}
If no, you're probably using an external bundler. Most frontend frameworks, like Vite, Remix, Astro, Nuxt, and others, will fall into this category. If so, use this selection of configs:
{
// My code runs in the DOM:
"extends": "@total-typescript/tsconfig/bundler/dom/app", // For an app
"extends": "@total-typescript/tsconfig/bundler/dom/library", // For a library
"extends": "@total-typescript/tsconfig/bundler/dom/library-monorepo", // For a library in a monorepo
// My code _doesn't_ run in the DOM (for instance, in Node.js):
"extends": "@total-typescript/tsconfig/bundler/no-dom/app", // For an app
"extends": "@total-typescript/tsconfig/bundler/no-dom/library", // For a library
"extends": "@total-typescript/tsconfig/bundler/no-dom/library-monorepo" // For a library in a monorepo
}
jsx
If your app has JSX, you can set the jsx
option in your tsconfig.json
:
{
"extends": "@total-typescript/tsconfig/bundler/dom/app",
"compilerOptions": {
"jsx": "react-jsx"
}
}
outDir
Mostly relevant for when you're transpiling with tsc
. If you want to change the output directory of your compiled files, you can set the outDir
option in your tsconfig.json
:
{
"extends": "@total-typescript/tsconfig/tsc/node/library",
"compilerOptions": {
"outDir": "dist"
}
}
I don't yet cover framework-specific options, like vite
, next
, remix
, etc. With enough persuasion, I might add them in the future.
@tsconfig/bases
?The @tsconfig/bases
package is a great resource for TypeScript configurations. However, I disagree with the idea that there is a single "recommended" configuration that works for everyone.
Also, I wanted a set of tsconfig.json
files that I controlled so I could use them to keep my Total TypeScript Course Repos up to date.
If you're looking for a great TypeScript course, check out Total TypeScript.
FAQs
A collection of TypeScript configurations, based on Total TypeScript's TSConfig Cheat Sheet
The npm package @total-typescript/tsconfig receives a total of 14,885 weekly downloads. As such, @total-typescript/tsconfig popularity was classified as popular.
We found that @total-typescript/tsconfig demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
New research reveals that LLMs often fake understanding, passing benchmarks but failing to apply concepts or stay internally consistent.
Security News
Django has updated its security policies to reject AI-generated vulnerability reports that include fabricated or unverifiable content.
Security News
ECMAScript 2025 introduces Iterator Helpers, Set methods, JSON modules, and more in its latest spec update approved by Ecma in June 2025.