tscfc
v1.5.0
Published
CLI utility for incrementally converting projects to TypeScript or applying new rules.
Maintainers
Readme
Tsconf Files Checker
A small CLI utility that helps with incrementally converting your project to TypeScript or to incrementally apply new rules (strictNullChecks, noImplicitAny, etc.) to an existing TypeScript project.
Flow
- The first
tscfcrun will output files without errors. - Command
tscfc --updateincludes files without errors totsconfig. - After that, each
tscfc --updatechecks files againsttsconfigfiles (from step 2) and shows the user if anything is broken:- If there are files without errors,
tscfcwill include them intsconfig. - If there are broken files (files that are already in
tsconfighave errors), it will output errors and exit with code 1 (fail tests).
- If there are files without errors,
Installation
npm i -D tscfcExample
Run from the terminal:
Usage: tscfc --project TSCONFIG_PATH SRC_PATH
Example: tscfc ./index.ts --project ../App/tsconfig.strict.json ../App/src
--project Path to your tsconfig.json
--verbose Print all logs, useful for debugging
--update Include successful files to tsconfig
--remaining Print all remaining filesNote: In order to check JavaScript files, please include allowJs: true in tsconfig.
Recommended Settings
If you want to incrementally enforce some rules (e.g., noImplicitAny, strictNullChecks), create tsconfig.strict.json alongside your tsconfig.json. Then add to tsconfig.strict.json:
{
"extends": "./tsconfig.json",
"compilerOptions": {
"noImplicitAny": true,
"strictNullChecks": true
}
}In package.json, add a pretest script, which will automatically run before your tests to check if you broke something or not, even before the test.
{
"scripts": {
"pretest": "tscfc --project ./tsconfig.strict.json ./src"
}
}