What problem does it solve?
It helps you clean and stabilize JavaScript/TypeScript codebases by identifying dead code, unused exports/types/dependencies, duplication, circular dependencies, boundary violations, and stale feature-flag suppressions, then (optionally) merging runtime coverage evidence into the same health view.
Core Features & Use Cases
- Static dead-code intelligence: Detect unreachable files, unused exports, unused types, unused enum/class members, unresolved imports, and unused/unlisted dependencies.
- Structure and quality checks: Surface circular dependencies, architecture boundary violations, complexity/health hotspots, and duplication patterns.
- Runtime confidence for safe cleanup: Merge production execution/coverage data into fallow health reports to prioritize hot-path safety and cold-path deletion confidence.
- Guided maintenance workflows: Support baselines/regressions for incremental adoption and a safe auto-fix workflow (dry-run first, then apply).
Quick Start
Run dead-code analysis with machine-readable JSON by executing: fallow dead-code --format json --quiet --changed-since main.