CLI + API that scans a project and shows dependency size breakdowns locally.
- Analyzes installed dependency sizes in
node_modules - Shows sorted list of dependencies by size
- Works as both a CLI tool and importable API
- Formatted table output or JSON
- Fast local analysis without external API calls
npm install -g @onamfc/pkg-inspectOr use directly with npx:
npx @onamfc/pkg-inspectAnalyze the current directory:
pkg-inspectAnalyze a specific project:
pkg-inspect /path/to/projectOutput as JSON:
pkg-inspect --jsonDisable colored output:
pkg-inspect --no-colorimport { analyzeProject, formatSize, formatResults } from '@onamfc/pkg-inspect';
// Analyze a project
const results = await analyzeProject('./my-project');
console.log(`Total size: ${formatSize(results.total)}`);
console.log(`Dependencies found: ${results.dependencies.length}`);
// Format and display results
console.log(formatResults(results));
// Access individual dependency data
results.dependencies.forEach(dep => {
console.log(`${dep.name}: ${formatSize(dep.size)}`);
});Analyzes dependencies in a project.
Parameters:
projectPath(string, optional) - Path to project directory. Defaults to current working directory.
Returns: Promise that resolves to:
{
total: 258254, // Total size in bytes
dependencies: [
{
name: "package-name",
version: "^1.0.0",
size: 123456 // Size in bytes
}
],
projectPath: "/path/to/project"
}Formats byte size to human-readable string.
Parameters:
bytes(number) - Size in bytes
Returns: String (e.g., "1.23 MB", "456.78 KB")
Formats analysis results as a readable table.
Parameters:
results(object) - Results fromanalyzeProject()
Returns: Formatted string ready to display
📦 Package Size Analysis
────────────────────────────────────────────────────────────
Total Size: 252.20 KB
Package Size
────────────────────────────────────────────────────────────
commander 182.03 KB
picocolors 15.20 KB
ora 26.87 KB
────────────────────────────────────────────────────────────
💡 Top 3 largest dependencies:
1. commander
2. ora
3. picocolors
Unlike other packages that fetch data from npm, pkg-inspect analyzes your actual installed node_modules directory. This gives you:
- Real sizes after installation (not theoretical npm package sizes)
- Analysis of your specific version and dependencies
- No network requests needed
- Fast local analysis
MIT