chromatix/phpcs-config-chromatix

Chromatix custom config for phpcs. Based heavily on the WordPress Coding Standards but with some of our own too.

v0.0.18 2018-08-23 07:57 UTC

README

Shareable config for phpcs for custom standards at Chromatix Digital Agency.

Based heavily on the WordPress Coding Standards but with some of our own too. Most notably, two spaces instead of tabs. Soz.

This config is still in development. If you have suggestions for improvement or if you disagree with anything this config makes you do, feel free to file an issue.

Writing PHP outside of the WordPress context? We still use WordPress standards, but obviously without the need for using WordPress-specific functions. See phpcs-config-chromatix-no-wordpress.

Installation

Install globally to use on any project:

composer global require chromatix/phpcs-config-chromatix

Install locally to one project:

composer require chromatix/phpcs-config-chromatix

You'll also need to have phpcs installed in the same manner, and set your phpcs installed_paths like follows:

vendor/bin/phpcs --config-set installed_paths ../../chromatix,../../wp-coding-standards/wpcs

It's probably ideal to do this in a post-install-cmd script in your composer.json; see this package's composer.json for an example of a cross-platform way to do so (it might look a bit complicated, but unfortunately is required... at least in our testing so far, anyway!).

Usage

Add this to your phpcs.xml file:

<?xml version="1.0"?>
<ruleset>
  <rule ref="phpcs-config-chromatix"/>
</ruleset>

Then:

  • Using globally?

    Run phpcs *.php

  • Using locally?

    Run vendor/bin/phpcs *.php

    Alternatively, you'll probably find it useful to add a script to your composer.json:

    "scripts": {
      "lint": "find . -type d \\( -name '.git' -o -name 'vendor' -o -name 'node_modules' \\) -prune -o -type f -name '*.php' -print | xargs vendor/bin/phpcs"
    }
    

    Then you can just run composer lint.

See also

License

MIT.