fox91/dev-tools

fox91 Dev Tools

v0.6.7 2022-11-26 10:45 UTC

README

Latest version Downloads Build status

Compatible with PHP 7.4, 8.0 and 8.1.

Included tools

Optional tools

Installation

composer require --dev fox91/dev-tools

Config example

Add following code to your composer.json:

"scripts": {
    "cs-e:test": "phpcs --colors -n",
    "cs:fix": "phpcbf --colors",
    "cs:test": "phpcs --colors",
    "lint:test": "parallel-lint --no-progress --blame --exclude vendor .",
    "phpstan:test": "phpstan analyse --no-progress --ansi --memory-limit 128M",
    "psalm:test": "psalm --no-progress --stats --show-info=true --show-snippet",
    "rector:fix": "rector --ansi process --no-progress-bar",
    "rector:test": "rector --ansi process --dry-run --no-progress-bar",
    "unit:test": "phpunit",
    "fix": [
        "@rector:fix",
        "@cs:fix"
    ],
    "test": [
        "@lint:test",
        "@rector:test",
        "@cs:test",
        "@psalm:test",
        "@unit:test"
    ]
},
"scripts-descriptions": {
    "cs-e:test": "Run PHP_CodeSniffer tests, show only errors",
    "cs:fix": "Run PHP_CodeSniffer fixes",
    "cs:test": "Run PHP_CodeSniffer tests",
    "fix": "Run all fixes!",
    "lint:test": "Run PHP Parallel Lint tests",
    "phpstan:test": "Run PHPStan tests",
    "psalm:test": "Run Psalm tests",
    "rector:fix": "Run Rector fixes",
    "rector:test": "Run Rector tests",
    "test": "Run all tests!",
    "unit:test": "Run PHPUnit tests"
}

Copy default configs to the root of your project:

cp \
  vendor/fox91/dev-tools/configs/.editorconfig \
  vendor/fox91/dev-tools/configs/.gitignore \
  vendor/fox91/dev-tools/configs/.phpcs.xml.dist \
  vendor/fox91/dev-tools/configs/gitattributes.txt \
  vendor/fox91/dev-tools/configs/phpdoc.dist.xml \
  vendor/fox91/dev-tools/configs/phpstan.neon.dist \
  vendor/fox91/dev-tools/configs/phpunit.xml.dist \
  vendor/fox91/dev-tools/configs/psalm.xml.dist \
  vendor/fox91/dev-tools/configs/rector.php \
  .
mv gitattributes.txt .gitattributes

Usage

composer test
docker run --rm -v "$(pwd)":/data:rw phpdoc/phpdoc run