ts-prune
TypeScript icon, indicating that this package has built-in type declarations

0.10.3 • Public • Published

Build npm GitHub issues

ts-prune

Find potentially unused exports in your Typescript project with zero configuration.

asciicast Join the chat at https://gitter.im/ts-prune/community

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
npm install ts-prune --save-dev
# yarn
yarn add -D ts-prune

Usage

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.json

Examples

Configuration

ts-prune supports CLI and file configuration via cosmiconfig (all file formats are supported).

Configuration options

  • -p, --project - tsconfig.json path(tsconfig.json by default)
  • -i, --ignore - errors ignore RegExp pattern
  • -e, --error - return error code if unused exports are found
  • -s, --skip - skip these files when determining whether code is used. (For example, .test.ts? will stop ts-prune from considering an export in test file usages)

CLI configuration options:

ts-prune -p my-tsconfig.json -i my-component-ignore-patterns?

Configuration file example ts-prunerc:

{
  "ignore": "my-component-ignore-patterns?"
}

FAQ

How do I get the count of unused exports?

ts-prune | wc -l

How do I ignore a specific path?

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-prune-ignore-next
export const thisNeedsIgnoring = foo;
2. Use grep -v to ignore a more widely used export name
ts-prune | grep -v ignoreThisThroughoutMyCodebase

Acknowledgements

Contributors

Nadeesha
Nadeesha Cabral
Snyk
Snyk bot
Dan
Dan Vanderkam
Vitaly
Vitaly Iegorov
Amir
Amir Arad
David
David Graham
Davis
Davis Ford
Ivo
Ivo Raisr
Josh
Josh Goldberg
Kristján
Kristján Oddsson
Simon
Simon Jang
The
The Gitter Badger
Tim
Tim Saunders
Torkel
Torkel Rogstad
William
William Candillon
phiresky/
phiresky

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 0.10.3
    187,564
    • latest

Version History

Package Sidebar

Install

npm i ts-prune

Weekly Downloads

199,852

Version

0.10.3

License

MIT

Unpacked Size

46.4 kB

Total Files

36

Last publish

Collaborators

  • ncthis