ts-prune-fork v0.0.0-development
ts-prune
Remove unused exports in your Typescript project with zero configuration.
Getting Started
ts-prune exposes a cli that reads your tsconfig file and prints out all the unused exports in your source files.
Installing
Install ts-prune with yarn or npm
npm install ts-prune -gUsage
ts-pruneOr you can install it in your project and alias it to a npm script in package.json.
"scripts": {
"find-deadcode": "ts-prune"
}If you want to run against different Typescript configuration than tsconfig.json:
ts-prune -p tsconfig.dev.jsonIf you want to use ts-prune as a linter that fails when there are unused exports use --exit-status:
ts-prune --exit-status && echo "no unused exports" || echo "found unused exports!"If you want to automatically remove unused export declarations:
ts-prune --fixThis will cause all exported functions, classes and variables to become local declarations, and will remove export ... from ... statements.
After this step, you should do the following things:
- Verify your code still compiles
- Run
ts-prune --fixagain, since there may be new unused exports after the first run - Find new unused local variable declarations with tsconfig
"noUnusedLocals": true
FAQ
How do I get the count of unused exports?
ts-prune | wc -lHow do I ignore a specific path?
ts-prune | grep -v src/ignore-this-pathHow do I ignore a specific identifier?
You can either,
1. Prefix the export with // ts-prune-ignore-next
// ts-prune-ignore-next
export const thisNeedsIgnoring = foo;2. Use grep -v to ignore a more widely used export name
ts-prune | grep -v ignoreThisThroughoutMyCodebaseAcknowledgements
Licence
MIT
5 years ago