A FIELD GUIDE TO LARAVEL · VOLUME II · THE ECOSYSTEM
ENTRY II.26 · CODE STYLE
Pint
Package · first recorded 22 June 2022, v0.1.0 on Packagist
An opinionated PHP code style fixer built on PHP CS Fixer. It ships with new Laravel applications and needs no configuration, so style stops being a discussion and becomes a command run before a commit or in CI.
Specification
Kind Dev dependency, a binary in vendor/bin; no runtime footprint
Engine PHP CS Fixer underneath; Prettier for Blade when that rule is on
Runs on The developer's machine and CI; GitHub Actions in the docs
Installed by included with new apps · composer require laravel/pint --dev
Voice none (not artisan): ./vendor/bin/pint --test · --dirty · --repair
Scales by --parallel across cores, --max-processes; --diff=main for changed files
Range Cloud: n/a: runs before deploy, not on the server
Forge, VPS: n/a: the same, a CI or pre-commit step
Vapor: n/a: the same; a step before vapor deploy
Neighbours
PHP CS Fixer is the engine underneath and accepts any of its rules; Pint is the Laravel preset that needs no configuration. Boost carries a Pint guideline, so a coding agent formats the way the project does. Pint formats PHP, and Blade if you opt in; it does not look for bugs.
Field marks
pint.json
vendor/bin/pint
.github/workflows/lint.yml
laravel/pint in require-dev
Fig. II.26.1 · one run of pint, exploded
Parts
1 pint.json, optional. preset, rules, exclude, notPath, notName; absent, the laravel preset applies.
2 Preset. laravel by default; per, psr12, symfony, or empty to build a rule set from nothing.
3 Rules. Any PHP CS Fixer rule by name, plus Pint/laravel_blade and Pint/phpdoc_type_annotations_only.
4 File set. Every .php outside vendor; --dirty or --diff=main narrows it to what git says has changed.
5 Fixer. PHP CS Fixer rewrites in place; --test only reports and exits non-zero; --repair does both.
6 Blade pass, opt in. Prettier with the Blade and Tailwind plugins, so Node must be present for --blade.
Hidden joinery
--repair fixes and still exits non-zero, so CI can both tidy and fail. --diff=main inspects only files that differ from a branch, which keeps a lint job short. Parallel mode is marked experimental and takes every core unless --max-processes caps it. The Blade rule, announced at Laracon US in July 2026, skips mail views.
Every line checked against the Pint docs, the skeleton, Packagist and The Monitor on 2026-10-08.
TITLE
Pint · one run, exploded
SOURCES
laravel.com/docs/13.x/pint · github.com/laravel/pint · github.com/laravel/laravel/blob/13.x/composer.json · packagist.org/packages/laravel/pint · laravel.com/blog/everything-we-announced-at-laracon-us-2026 · laravel.com/docs/13.x/boost · Monitor 556
STATUS
Verified · 2026-10-08
SHEET
II.26 of 48
REV
A · 2026-10-08
DRAWN
BS
FINISH
All faces, including the back