JSPM

npm-watchdog

1.0.1
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 3
  • Score
    100M100P100Q25911F
  • License MIT

A cross-platform tool to detect unused dependencies in JavaScript/TypeScript projects

Package Exports

  • npm-watchdog
  • npm-watchdog/src/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (npm-watchdog) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

npm-watchdog 🐕

A cross-platform command-line tool to detect unused dependencies in JavaScript/TypeScript projects.

Description

npm-watchdog analyzes your project's source files (.js, .jsx, .ts, .tsx) and detects which packages listed in your package.json are not being used in the source code. It's like having a watchdog guarding your forgotten dependencies.

Cross-Platform Compatibility

npm-watchdog works on all major platforms:

  • Windows
  • macOS
  • Linux

The tool is designed to handle path differences, file system operations, and other platform-specific issues automatically.

Installation

npm install -g npm-watchdog

Local installation

npm install --save-dev npm-watchdog

Usage

Basic usage

# If installed globally
npm-watchdog

# If installed locally
npx npm-watchdog

Options

# Show help
npm-watchdog --help

# Export results in JSON format
npm-watchdog --json

# Ignore certain modules in the analysis
npm-watchdog --ignore axios,lodash

# Specify a different base path (useful for monorepo projects)
npm-watchdog --root ./packages/my-package

# Change language (English is default, Spanish is also available)
npm-watchdog --lang es

Multilanguage Support

npm-watchdog supports multiple languages:

  • English (default): --lang en
  • Spanish: --lang es

Example:

npm-watchdog --lang es

How it works

npm-watchdog:

  1. Reads your package.json and extracts all dependencies (dependencies and devDependencies)
  2. Recursively looks for all .js, .jsx, .ts, .tsx files in your project
  3. Analyzes each file looking for:
    • require('module')
    • import xyz from 'module'
    • import * as xyz from 'module'
    • import * as xyz from 'module'
    • import 'module'
  4. Compares the dependencies found with those listed in package.json
  5. Reports packages that are not being used in any file

Requirements

  • Node.js 12 or higher

Limitations

  • Does not detect dynamic imports (require(variable))
  • Does not analyze files with custom extensions
  • Does not detect imports in comments or disabled code

License

MIT