p3c is a Java static analysis tool and code quality linter designed to enforce professional coding guidelines and quality standards. It utilizes a set of custom rules based on the PMD engine to scan source code for style violations, performance bottlenecks, and potential bugs.
The project is distributed as an IDE linting plugin that provides real-time feedback and warnings during development. It also includes functionality for pre-commit code quality gates, allowing modified files to be scanned and blocked if they violate defined rules before being committed to version control.
The analysis surface covers a wide range of categories, including concurrency auditing, exception handling validation, and object-oriented implementation verification. It specifically includes a SQL performance analyzer to detect inefficient database queries and mapping logic, as well as security control enforcement for input validation and authorization checks. Additional capabilities include the enforcement of naming conventions, formatting styles, and documentation standards.