Remove unused exports in your Typescript project with zero configuration.
npm install ts-prune-fork!Build !David !npm !GitHub issues
Remove unused exports in your Typescript project with zero configuration.

ts-prune exposes a cli that reads your tsconfig file and prints out all the unused exports in your source files.
Install ts-prune with yarn or npm
``sh`
npm install ts-prune -g
`sh`
ts-prune
Or you can install it in your project and alias it to a npm script in package.json.
`json`
"scripts": {
"find-deadcode": "ts-prune"
}
If you want to run against different Typescript configuration than tsconfig.json:
`sh`
ts-prune -p tsconfig.dev.json
If you want to use ts-prune as a linter that fails when there are unused exports use --exit-status:
`sh`
ts-prune --exit-status && echo "no unused exports" || echo "found unused exports!"
If you want to automatically remove unused export declarations:
`sh`
ts-prune --fix
This 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:
1. Verify your code still compiles
2. Run ts-prune --fix again, since there may be new unused exports after the first run"noUnusedLocals": true
3. Find new unused local variable declarations with tsconfig
#### How do I get the count of unused exports?
`sh`
ts-prune | wc -l
#### How do I ignore a specific path?
`sh`
ts-prune | grep -v src/ignore-this-path
#### How do I ignore a specific identifier?
You can either,
##### 1. Prefix the export with // ts-prune-ignore-next
`ts`
// ts-prune-ignore-next
export const thisNeedsIgnoring = foo;
##### 2. Use grep -v to ignore a more widely used export name
`sh``
ts-prune | grep -v ignoreThisThroughoutMyCodebase
- The excellent ts-morph library. And this gist by @dsherret.
MIT