/bases

Hosts TSConfigs to extend in a TypeScript app, tuned to a particular runtime environment

Primary LanguageTypeScriptMIT LicenseMIT

Centralized Recommendations for TSConfig bases

Hosts TSConfigs for you to extend your in apps, tuned to a particular runtime environment. Owned and improved by the community. Basically Definitely Typed for TSConfigs.

Available TSConfigs

Recommended tsconfig.json

Install:

npm install --save-dev @tsconfig/recommended
yarn add --dev @tsconfig/recommended

Add to your tsconfig.json:

"extends": "@tsconfig/recommended/tsconfig.json"

Install:

npm install --save-dev @tsconfig/deno
yarn add --dev @tsconfig/deno

Add to your tsconfig.json:

"extends": "@tsconfig/deno/tsconfig.json"

Docusaurus v2 tsconfig.json

Install:

npm install --save-dev @tsconfig/docusaurus
yarn add --dev @tsconfig/docusaurus

Add to your tsconfig.json:

"extends": "@tsconfig/docusaurus/tsconfig.json"

Install:

npm install --save-dev @tsconfig/node10
yarn add --dev @tsconfig/node10

Add to your tsconfig.json:

"extends": "@tsconfig/node10/tsconfig.json"

Install:

npm install --save-dev @tsconfig/node12
yarn add --dev @tsconfig/node12

Add to your tsconfig.json:

"extends": "@tsconfig/node12/tsconfig.json"

React Native tsconfig.json

Install:

npm install --save-dev @tsconfig/react-native
yarn add --dev @tsconfig/react-native

Add to your tsconfig.json:

"extends": "@tsconfig/react-native/tsconfig.json"

Install:

npm install --save-dev @tsconfig/svelte
yarn add --dev @tsconfig/svelte

Add to your tsconfig.json:

"extends": "@tsconfig/svelte/tsconfig.json"

Contributing

git clone https://github.com/tsconfig/bases.git tsconfig-bases
cd tsconfig-bases

Then edit the tsconfig.json files in bases/.

Every morning there is a GitHub Action which deploys any changed bases.

To generate the recommended TSConfig which is generated via tsc --init, run:

deno run --allow-read --allow-run --allow-env --allow-write --allow-net scripts/generate-recommend.ts

Developing

Create a set of npm packages via:

deno run --allow-read --allow-write --allow-net scripts/create-npm-packages.ts

You can inspect them in the packages/ folder, then they are deployed by passing in the paths to the base files via stdin:

echo bases/node10.json | deno run --allow-read --allow-run --allow-env scripts/deploy-npm-packages.ts

or to send in changes from the last 3 weeks:

git log --pretty=format: --name-only --since="21 days ago" bases | deno run --allow-read --allow-run --allow-env scripts/deploy-npm-packages.ts

The rest of the files in this repo are for deploying, which uses Deno 1.0.

If you add a new json file, please run deno run --allow-read --allow-write scripts/update-markdown-readme.ts to update the README.