A combination of helpful typescript packages that make tools like jest and eslint to behave more efficiently for projects that need to scale.
Please reference the individual packages below.
This repo is WIP. Please wait for an official release before attempting to use this package.
If you cannot wait, please reference the develop branch for experimental features.
This tool also may be slightly less useful in higher versions of @typescript/eslint-parser as there is a experimental key which will compile only project files EXPERIMENTAL_useProjectService
modules.export = {
parserOptions: {
EXPERIMENTAL_useProjectService: true,
},
}
- If you have massive typescript projects, using something like NX for caching typescript builds and running typescript compile only on staged or upstream files is still the way to go for linting fast.
This monorepo encompasses 1 utility tsc-diff
which is used to run eslint and jest. There are two packages specific to eslint.
If you have a tool/test-runner that you think needs to be supported please file an issue and consider contributing to add support for this tool.
- Adds the ability to run tsc with your project's current config but only include specific files.
@vllc/tsc-diff
: Node 12.x.x - 20.x.x@vllc/eslint-tsc-diff
: Eslint >=6 (using 8.x.x - locally)
typescript-diff monorepo packages
@vllc/eslint-tsc-diff
Install this package for eslint to run tsc only on the test files dependency tree.
npm install -D @vllc/tsc-diff-eslint
@vllc/jest-tsc-diff
Install this package for jest to run tsc only on the test files dependency tree
npm install -D @vllc/eslint-ts-diff
@vllc/tsc-diff
Install this package for getting the staged and upstream diff file output with flexibility such as @vllc/tsc-diff- start
and @vllc/tsc-diff- stop
to cleanup the dynamic tsconfig.json file generated.
npm install -D @vllc/tsc-diff
WIP
jest to make running pre-commit and pre-push hooks easier. jest-tsc-diff
will also fully supports being run in isolatation and piping changes to custom test runners.
- @vllc/jest-tsc-diff - NOT BUILT YET. jest support
- Adds a compatibility script to directly mutate the tsconfig.json file (with backups) for babel-jest, which may work well with esbuild and swc-jest
- Adds wrapper around jest so it runs
ts-jest
with the staged tsconfig file.
WIP, this will be dynamically generated
Type: string
Lorem ipsum.
Type: object
Type: string
Default: rainbows