A high-speed static analysis tool for enforcing dependency graph hygiene and removing unused code in JavaScript/TypeScript projects.
Rev-dep is a high-speed static analysis tool for JavaScript and TypeScript codebases that enforces dependency graph hygiene and removes unused code. It solves the problem of maintaining architecture integrity and dependency clarity in large-scale projects by providing a fast CLI that consolidates multiple governance checks into a single parallelized pass.
JavaScript and TypeScript developers working on medium to large codebases, especially those in monorepos, who need to enforce architectural boundaries, eliminate dead code, and optimize dependency management.
Developers choose Rev-dep for its exceptional speed (10x-200x faster than alternatives), comprehensive config-based checks, and first-class monorepo support, which together reduce CI costs and provide actionable insights for maintaining a clean dependency graph.
Dependency analysis and optimization toolkit for modern JavaScript and TypeScript codebases. Enforce dependency graph hygiene and remove unused code with a very fast CLI.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Implemented in Go, Rev-dep audits 500k+ lines of code in approximately 500ms, making it 10x-200x faster than alternatives like Madge or knip, as demonstrated in the performance benchmarks section.
Allows enforcing module boundaries, detecting circular imports, orphan files, and unused exports in a single parallelized pass, reducing CI time and costs through consolidated checks.
Natively resolves imports across workspace packages in pnpm, yarn, and npm monorepos, with full support for package.json exports and imports maps for accurate cross-package analysis.
Offers autofix capabilities for issues like import conventions and unused exports, helping teams maintain code quality with minimal manual intervention, as detailed in the config examples.
The config file has numerous options and can be overwhelming to set up correctly, especially for teams new to dependency analysis tools, as seen in the comprehensive config example.
Focused exclusively on JavaScript and TypeScript, so it's not suitable for polyglot projects or other programming languages, limiting its applicability in diverse tech stacks.
As a CLI-only tool, it lacks visual dependency graphs that some developers prefer for exploring complex codebases, which might hinder intuitive understanding for visual learners.