Code style configurations for Laravel projects using a combination of PHP-CS-Fixer, ECS and Rector.
index · installation · usage
> Installation ..................................................................... > Usage ............................................................................
Install the package using composer. When prompted to create a GrumPHP configuration file, choose "No".
composer require chiiya/laravel-code-style --dev
# Publish config files
php artisan vendor:publish --tag="code-style-config"
Next, adjust the ecs.php
, .php-cs-fixer.dist.php
, rector.php
and phpstan.neon
files
that have just been created in your project folder to suit your project structure.
After publishing the configuration files, you may have to re-initialize GrumPHP:
php ./vendor/bin/grumphp git:deinit
php ./vendor/bin/grumphp git:init
The GrumPHP config includes tasks for PHP-CS-Fixer, ECS and TLint by default. Tasks for rector
and phpstan
are not included, since they can take a long time. You may choose to execute them
separately instead (for example, in a CI pipeline), or add them to your GrumPHP config if you're
fine with the longer waiting times:
Example for grumphp.yml
grumphp:
tasks:
# ...
rector: ~
phpstan: ~
Example for a CI config (call these somewhere in your pipeline):
./vendor/bin/ecs check
./vendor/bin/php-cs-fixer fix --dry-run --diff
./vendor/bin/rector process --dry-run
./vendor/bin/tlint lint
./vendor/bin/phpstan analyse --memory-limit=2G