alleyinteractive/alley-coding-standards

PHPCS sniffs for Alley Interactive

Installs: 151 477

Dependents: 42

Suggesters: 0

Security: 0

Stars: 7

Watchers: 33

Forks: 3

Open Issues: 1

Type:phpcodesniffer-standard

v2.1.0 2024-07-19 19:38 UTC

README

Example of a badge pointing to the readme standard spec

This is a PHPCS ruleset for Alley Interactive.

Installation

To use this standard in a project, declare it as a dependency.

composer require --dev alleyinteractive/alley-coding-standards

This will install the latest compatible version of PHPCS, WPCS, and VIPCS to your vendor directory in order to run sniffs locally.

You can also manually add this to your project's composer.json file as part of the require property:

"require": {
	"alleyinteractive/alley-coding-standards": "^2.0"
}

Usage

To use this standard with phpcs directly from your command line, use the command:

vendor/bin/phpcs --standard=Alley-Interactive .

Alternatively, you can set this as a composer script, which will automatically reference the correct version of phpcs and the dependent standards.

"scripts": {
	"phpcs" : "phpcs --standard=Alley-Interactive ."
}

Then use the following command:

composer run phpcs

You can also pass arguments to the composer phpcs script, following a -- operator like this:

composer run phpcs -- --report=summary

Extending the Ruleset

You can create a custom ruleset for your project that extends or customizes these rules by creating your own phpcs.xml file in your project, which references these rules, like this:

<?xml version="1.0"?>
<ruleset>
  <description>Example project ruleset</description>

  <!-- Include Alley Rules -->
  <rule ref="Alley-Interactive" />

  <!-- Project customizations go here -->
</ruleset>

Testing

When contributing to this project, modifications to the ruleset should have a corresponding test in the tests directory. For the most part, this takes the form of a passing test in tests/fixtures/pass and a failing one in tests/fixtures/fail. You can run the tests with composer phpunit. If you want to run PHPCS against the test fixtures, you can run composer phpcs:fixtures to ensure that what is passing/failing matches your expectations. For failing fixtures in tests/fixtures/fail, we recommend keeping the files smaller and focused on the specific sniff being tested.

Changelog

Please see CHANGELOG for more information on what has changed recently.

Credits

This project is actively maintained by Alley Interactive. Like what you see? Come work with us.

License

The GNU General Public License (GPL) license. Please see License File for more information.