irstea/php-cs-fixer-config
A reusable PHP-CS-Fixer configuration package that provides an opinionated, consistent coding style for PHP and Laravel projects. Install it to standardize formatting and linting across repositories, with sensible defaults and easy customization.
php-cs-fixer ruleset consumed via require-dev. It introduces no runtime behavior, no service provider, no user-facing surface, and no production footprint. The product decisions it informs are about engineering standards governance — whether the team adopts a single canonical style contract across its PHP/Laravel estate, how CI enforces it, and how much review attention goes to formatting versus logic — not about roadmap scope or customer experience..php-cs-fixer.dist.php, or compose the upstream presets (@PSR12, @PhpCsFixer, @Symfony) ourselves? Build cost is hours, not sprints. The dependency carries outsized supply-chain and availability risk relative to the value it delivers.Consider it if:
Look elsewhere if:
laravel/pint is a single, near-zero-config php-cs-fixer wrapper with first-party maintenance and is the obvious default. Running both would create two competing style authorities, which is a governance problem before it is a tooling problem.php-cs-fixer presets, laravel/pint, easy-coding-standard, squizlabs/php_codesniffer.Recommended posture: do not add this as a Composer dependency from a private, unmaintained-looking source. If you have access, read the ruleset, fork or transcribe the opinionated parts into a repo-local config, pin the php-cs-fixer version, and revisit only if the package gains public releases and a clear license.
For executives (30 seconds): "This isn't a customer-facing feature. It's a one-page configuration that makes every PHP service format code the same way — fewer trivial review comments, cleaner diffs, faster onboarding, and a real reduction in merge friction. The engineering cost is a few hours. The catch: the package itself is an internal, unmaintained artifact with no public footprint, private hosting, and no license clarity, so my recommendation is to copy its rules rather than depend on it. Net: adopt the idea, not the dependency."
For engineering leads: "There's an existing ruleset we can mine for opinions, but taking a Composer dependency on a private GitLab repo with zero dependents puts an external availability and secret-management risk directly in our CI path — every runner would need credentialed access to someone else's infrastructure. Proposal: vendor the rule set into a repo-local .php-cs-fixer.dist.php (or start from laravel/pint if we're Laravel-first), pin the php-cs-fixer version, wire a single CI job that fails on a dirty diff rather than fixing, isolate the first-run reformat into its own commit and add it to .git-blame-ignore-revs, then roll out one repository at a time with a named owner. Measure the drop in style-related review comments over the next quarter. If the upstream package later gets public releases and a license, we can swap to requiring it with no behavioral change — the config is the interface."
For the risk-averse reviewer: "The failure mode here isn't code quality — it's that an upstream branch rewrite, access revocation, or repo relocation breaks composer install in every pipeline simultaneously. Forking and pinning by SHA converts that ambient external risk into a deliberate, reviewable internal decision for roughly a day per year of maintenance. The license question should be answered before, not during, rollout."
How can I help you explore Laravel packages today?