npm-unused
v1.0.1
Published
Detect unused dependencies in JavaScript/TypeScript projects
Maintainers
Readme
npm-unused
Find unused dependencies in JS/TS projects.
Why Remove Unused Dependencies?
- Faster installs — fewer packages to download and resolve
- Smaller
node_modules— saves disk space and speeds up CI builds - Reduced attack surface — every dependency is a potential security risk
- Cleaner codebase — easier for new contributors to understand what the project actually uses
Install
npm install -g npm-unused
# or
npx npm-unusedUsage
npm-unused # scan current directory
npm-unused --dir /path/to/project # scan a specific project
npm-unused --ignore jest eslint # skip specific packages
npm-unused --json # machine-readable output
npm-unused --ci # exit code 1 if unused deps found| Flag | Description |
| ------------------- | ------------------------------------ |
| --dir <path> | Project directory (default: cwd) |
| --ignore <pkg...> | Packages to exclude from the report |
| --json | Output as JSON |
| --ci | Non-zero exit when unused deps exist |
| -V, --version | Print version |
| -h, --help | Show help |
Example
ℹ Scanned project at /home/user/my-app
ℹ Found 12 deps and 8 devDeps
ℹ Detected 15 imported packages in source files
❌ Unused dependencies:
• axios
• lodash
❌ Unused devDependencies:
• eslint
Suggested fix:
npm uninstall axios lodash eslintHow It Works
- Reads
dependencies/devDependenciesfrompackage.json - Discovers
.js .jsx .ts .tsxfiles viafast-glob - Parses each file with
@babel/parser+@babel/traverseto collectimport,require, and dynamicimport()calls - Reports any declared dependency not found in source
License
MIT
