A Lumen 5 and Laravel 5 SquizLabs Code Sniffer 2.0 artisan command. Detect violations of a defined coding standard. It helps your code remains clean and consistent.

2.3.0 2017-09-29 21:00 UTC

This package is not auto-updated.

Last update: 2024-05-11 15:30:27 UTC


Build Status Latest Stable Version License

This is a Laravel 5 package that hooks up SquizLabs CodeSniffer 2 into Laravel-based apps. It can also be used manually, so read on.

Detect violations of a defined coding standard. It helps your code remain clean and consistent. Available options are: PSR2, PSR1, Zend, PEAR, Squiz, PHPCS and SocialEngine.


Require this package in composer:

$ composer require socialengine/sniffer-rules

Laravel 5

In your config/app.php add 'SocialEngine\SnifferRules\ServiceProvider' to $providers array:

'providers' => [


Laravel 5: Publish the configuration file

$ php artisan vendor:publish


Install our Standard by configuring PHP_CodeSniffer to look for it.

$ php ./vendor/bin/phpcs --config-set installed_paths ./vendor/socialengine/src/Socialengine/SnifferRules/Standard/



$ php artisan sniff

To run the sniffer in a CI environment, the -n option should be set to remove interaction:

$ php artisan sniff -n


$ php ./vendor/bin/phpcs --standard=SocialEngine path/to/code 

It's encouraged to add a Makefile to your project that makes it trivial for other developers. Use Makefile in this directory and adjust as needed to fit your project requirements.


In combination with the Makefile, Travis has issues finding the standard, we had to add a before_script to make it work. See Unum repo for example.

before_script: php ./vendor/bin/phpcs --config-set installed_paths "`pwd`/vendor/socialengine/sniffer-rules/src/SocialEngine/SnifferRules/Standard/"

SocialEngine Coding Standards

Coding standards

Addendum and Clarifications

  • namespace should be on the same line as opening php tag. e.g.: <?php namespace SocialEngine\Amazing
  • Property names should be camelCase
  • Test names should use underscores, not camelCase. e.g.: test_cats_love_catnip