A fast, zero-dependency PHP tool that detects unused, shadow, and misplaced Composer dependencies.
Composer Dependency Analyser is a PHP command-line tool that statically analyzes Composer-based projects to detect dependency issues such as unused packages, shadow dependencies, and incorrectly categorized dependencies. It helps developers avoid runtime failures and maintain a clean, reliable dependency graph by scanning codebases against composer.json declarations.
PHP developers and teams working on Composer-based applications or libraries who want to ensure dependency hygiene and prevent deployment issues.
It offers superior performance and comprehensive issue detection compared to alternatives, scanning large codebases in seconds with zero external dependencies, making it easy to integrate into development workflows.
🚀 Fast detection of composer dependency issues (unused dependencies, shadow dependencies, misplaced dependencies)
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Detects unused, shadow, and misplaced dependencies including PHP extensions, outperforming alternatives like composer-unused and composer-require-checker in scope, as shown in the comparison table.
Scans approximately 15,000 files in just 2 seconds, enabling quick integration into CI/CD pipelines without significant overhead, as highlighted in the README benchmarks.
The tool itself has no Composer dependencies, ensuring lightweight installation and avoiding additional dependency management complexity.
Supports fine-grained ignores and path adjustments via PHP config files, allowing customization for complex projects with specific needs, such as excluding directories or ignoring errors on packages.
Relies on static scanning, so it may miss dependencies in dynamically loaded code or complex DIC configurations, requiring manual extraction from non-PHP files as admitted in the README.
Advanced setups, like handling non-PHP files or ignoring specific errors, require writing PHP configuration files, which can be cumbersome and error-prone for developers not familiar with the tool.
Operates solely as a CLI tool, lacking graphical interfaces or direct integration with IDEs, which might reduce usability for teams accustomed to visual or integrated development environments.