A static Code Analyzer

Stop guessing.
Start proving.

OptiPrune builds a dependency graph from your real entry points and shows what is never reached — files, imports, exports, packages, and logic.

npm install --save-dev @optiprune/cli · inspect first, fix deliberately

npm version for @optiprune/corenpm version for @optiprune/cliSocket security score for @optiprune/cliMIT license
OptiPrune dependency graph animation
Why OptiPrune

Understand your codebase.

Designed for safe cleanup: inspect the graph, review confidence, then remove only what your codebase can prove is unreachable.

01 / GRAPH

Reachability, not heuristics

Entry points create a real module graph instead of relying on naming guesses or arbitrary percentages.

02 / CONTEXT

Context-aware findings

Dynamic dispatch, test conventions, generated files, and package metadata stay visible in the analysis.

03 / CONTROL

Dry-run first

Every fix is explicit. Preview changes, use confidence gates, and keep a clean audit trail in CI.

A real report

Scan. Verify. Prune.

This excerpt is from a real CLI run against a two-file JavaScript fixture. Paths are shown exactly as the reporter emits them.

$ npx @optiprune/cli analyze --entry src/index.js --no-conventional-entries --fail-on none
Optiprune Analysis Report v1.16.0
Root: /home/ubuntu/optiprune-core/.research-fixture
 
Summary:
  Files: 2 discovered, 2 parsed
  Findings: 2 total (0 errors, 2 warnings)
 
/home/ubuntu/optiprune-core/.research-fixture/src/index.js
  WARNING [unused-export] Export 'main' is never imported or referenced.
    at /home/ubuntu/optiprune-core/.research-fixture/src/index.js:1:16 (Confidence: high)
/home/ubuntu/optiprune-core/.research-fixture/src/orphan.js
  WARNING [unreachable-file] File is part of an isolated component (#0) that is unreachable from any entry point.
Use OptiPrune where you work

One analyzer, three entry points.

Start with the CLI, integrate the Core API, or review findings in VS Code.