synergitech / laravel-coding-standards
A generic package for implementing Laravel Pint coding standards across Laravel packages
Package info
github.com/SynergiTech/laravel-coding-standards
Language:Shell
pkg:composer/synergitech/laravel-coding-standards
Requires
- php: ^8.1
- laravel/pint: ^1.0
- squizlabs/php_codesniffer: ^4.0
This package is auto-updated.
Last update: 2026-03-30 14:02:20 UTC
README
A Composer package for implementing Laravel Pint coding standards across Laravel packages.
Overview
This package provides:
- A standardised
pint.jsonconfiguration file with PSR-12 preset and custom rules - Shell scripts to run Laravel Pint for code formatting and testing
- Automatic Laravel Pint dependency management through Composer
Installation
Via Composer (Recommended)
Install the package using Composer:
composer require synergitech/laravel-coding-standards --dev
This will automatically install Laravel Pint as a dependency and make the scripts available in your project.
Alternative Installation Methods
-
As a Git Submodule:
git submodule add https://github.com/SynergiTech/laravel-coding-standards.git tools/coding-standards
-
Manual Installation: Copy the files directly to your project and install Laravel Pint separately:
composer require laravel/pint --dev
Usage
Running Pint
Apply Code Formatting
To automatically fix coding standard issues:
./vendor/synergitech/laravel-coding-standards/pint
Or if installed as submodule/manually:
./tools/coding-standards/pint
# or
./pint
You can pass additional arguments to customise the behaviour:
./vendor/synergitech/laravel-coding-standards/pint --verbose ./vendor/synergitech/laravel-coding-standards/pint --dry-run ./vendor/synergitech/laravel-coding-standards/pint app/Models
Test Code Standards
To check for coding standard issues without making changes:
./vendor/synergitech/laravel-coding-standards/pint-test
Or if installed as submodule/manually:
./tools/coding-standards/pint-test
# or
./pint-test
You can pass additional arguments to customise the testing:
./vendor/synergitech/laravel-coding-standards/pint-test --verbose ./vendor/synergitech/laravel-coding-standards/pint-test app/Controllers
Adding Scripts to Your Composer.json
For easier access, you can add these scripts to your project's composer.json:
{
"scripts": {
"pint": "./vendor/synergitech/laravel-coding-standards/pint",
"pint:test": "./vendor/synergitech/laravel-coding-standards/pint-test"
}
}
Then run:
composer run pint # Apply formatting composer run pint:test # Test standards
Boost Guidelines
As this plugin acts as a wrapper for pint, the boost guidelines that get published into the project do not reference this package.
If you use boost then you will need to override the boost guidelines for pint.
If you want this package to publish boost guideline stubs into your project (.ai/guidelines), add the Composer install script override below to your project's composer.json:
{
"scripts": {
"post-install-cmd": [
"SynergiTech\\LaravelCodingStandards\\ComposerScripts::publishGuidelines"
]
}
}
After adding it, run:
composer install
This triggers SynergiTech\LaravelCodingStandards\ComposerScripts::publishGuidelines and copies the guideline files into .ai/guidelines which boost will interpret as an overwrite when running boost:install and boost:update.
Configuration
The pint.json file includes:
- PSR-12 preset as the base standard
- Custom rules for enhanced code quality
- Exclusion of common directories (vendor, storage, bootstrap/cache)
Custom Rules Included
- Array syntax and indentation improvements
- Multiline comment alignment
- String concatenation with single space
- Strict type comparisons
- Ordered class elements and imports
- Modern PHP syntax preferences
- And many more quality-of-life improvements
For a full list of rules, see the pint.json configuration file.
Requirements
- PHP ^8.1
- Laravel Pint ^1.0 (automatically installed with this package)
License
This package is open-sourced software licensed under the MIT license.