Laravel Pint is a zero-dependency PHP code style fixer for minimalists - built on top of PHP-CS-Fixer. Pint makes it simple to ensure that your code style stays clean and consistent.
Laravel Pint requires PHP 8.0+.
You may use Composer to install Pint into your PHP project:
composer require laravel/pint --dev
Once Pint has been installed, the pint
binary will be available in your project's vendor/bin
directory:
./vendor/bin/pint
When running Pint, it will output a list of files that have been fixed. It is possible to see the changes made in more detail using the -v
option:
./vendor/bin/pint -v
In addition, if you would like Pint to simply inspect your code for style errors without actually changing the files, you may use the --test
option:
./vendor/bin/pint --test
By default, Pint does not require any configuration and will fix code style issues in your code by following the rules defined in the PSR-12 Style Guide.
However, if you wish to customize the presets, rules, or inspected folders, you may do so by creating a pint.json
file in your project's root directory:
{
"preset": "psr12"
}
Presets define a set of rules that can be used to fix code style issues in your code. By default, Pint uses the psr12
preset, which fixes issues by following the rules defined in the PSR-12 Style Guide.
However, you can use a different preset by passing the --preset
option:
pint --preset laravel
If you wish, you may also set the preset in your project's pint.json
file:
{
"preset": "laravel"
}
The currently supported presets are: psr12
, laravel
, and symfony
.
Rules are style guidelines that Pint will use to fix code style issues in your code. As mentioned above, presets are predefined groups of rules that should be perfect for most PHP projects, so you typically will not need to worry about the individual rules they contain.
However, if you wish, you may enable or disable specific rules in your pint.json
file:
{
"preset": "laravel",
"rules": {
"braces": false
}
}
Pint is built on top of PHP-CS-Fixer. Therefore, you may use any of its rules to fix code style issues in your project: PHP-CS-Fixer Configurator.
By default, Pint will inspect all .php
files in your project except those in the vendor
folder. If you wish to exclude more folders, you may do so by using the exclude
configuration option:
{
"exclude": [
"my-specific/folder"
]
}
Thank you for considering contributing to Pint! You can read the contribution guide here.
In order to ensure that the Laravel community is welcoming to all, please review and abide by the Code of Conduct.
Please review our security policy on how to report security vulnerabilities.
Pint is open-sourced software licensed under the MIT license.