A CLI tool that unifies multiple PHP quality assurance and static analysis tools under a single command interface.
PHPQA is a command-line tool that acts as a unified interface for running multiple PHP quality assurance and static analysis tools. It simplifies the process of checking code syntax, enforcing coding standards, detecting dead code, and running tests by providing a single command to execute various analyzers. The tool solves the problem of dealing with different argument formats and configurations across individual PHP QA tools.
PHP developers and teams who want to integrate multiple code quality checks into their development workflow, especially those working on PHP, Symfony, or Drupal projects and using pre-commit hooks.
Developers choose PHPQA because it eliminates the need to learn and remember the specific CLI syntax for each QA tool, provides project-specific configuration templates, and enables easy integration into Git hooks for automated code analysis.
PHPQA all-in-one Analyzer CLI tool
PHPQA standardizes the different argument formats of tools like PHP-CS-Fixer and PHP_CodeSniffer into a single 'phpqa analyze' command, eliminating the need to memorize multiple CLI syntaxes as described in the overview.
Enables easy management of analyzer settings through a 'phpqa.yml' file, allowing users to enable, disable, or customize behaviors without editing individual tool configurations.
With the '--git' option, it analyzes only staged files, making it seamless to set up automated quality checks in pre-commit hooks, as highlighted in the usage section.
Includes built-in configuration templates for PHP, Symfony, and Drupal projects, reducing setup time for common frameworks when running 'phpqa init'.
Requires cloning the repository, running composer install, and creating a symlink, which is more complex than installing via Composer globally and may pose issues on systems without proper permissions.
The README admits it's a work-in-progress with poor documentation and test coverage, and lacks integration with popular analyzers like PDepend or security-checker listed in 'Nice to have features'.
Bundles multiple analyzers by default, which can lead to redundancy or version conflicts if projects already have these tools configured separately, adding unnecessary overhead.
A PHP parser written in PHP
:sparkles: Monorepo for all the tooling which enables ESLint to support TypeScript
Static Type Checker for Python
🐶 Automated code review tool integrated with any code analysis tools regardless of programming language
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.