diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 1143e797..d7bb7eed 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -9,13 +9,6 @@ repos: - id: check-added-large-files args: ['--maxkb=600'] - - repo: https://github.com/commitizen-tools/commitizen - rev: v3.26.0 - hooks: - - id: commitizen - stages: - - commit-msg - - repo: local hooks: - id: php-cs-fixer diff --git a/README.md b/README.md index b8032644..b499756f 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,13 @@ Wrapper with pre-defined rules around the [PHP-CS-Fixer](https://github.com/FriendsOfPHP/PHP-CS-Fixer) package โ€” A tool to automatically fix PHP Coding Standards issues. -If you **like/use** this package, please consider **starring** it. Thanks! +This repository aims to provide a standardized way to apply coding standards across multiple projects, ensuring consistency and adherence to best practices. + +By using predefined rulesets, it simplifies the setup process and allows teams to quickly integrate PHP-CS-Fixer into their development workflow. + +
+ +If you **like/use** this package, please consider โญ๏ธ **starring** it. Thanks!
@@ -38,100 +44,110 @@ If you **like/use** this package, please consider **starring** it. Thanks! Require as dependency: ```bash -composer req wayofdev/cs-fixer-config +composer req --dev wayofdev/cs-fixer-config ```
## ๐Ÿ›  Configuration -1. Create PHP file and name it `.php-cs-fixer.dist.php` and place it inside root directory of project. It will be recognized by PHP CS Fixer automatically. +### โ†’ Setup -2. Example contents of `.php-cs-fixer.dist.php` file: +- Create PHP file and name it `.php-cs-fixer.dist.php` and place it inside root directory of project. It will be recognized by PHP CS Fixer automatically. + +- Example contents of `.php-cs-fixer.dist.php` file: ```php - inDir(__DIR__ . '/src') + ->inDir(__DIR__ . '/tests') + ->addFiles([__FILE__]) + ->getConfig() + ; + + $config->setCacheFile(__DIR__ . '/.build/php-cs-fixer/php-cs-fixer.cache'); + + return $config; + ``` - declare(strict_types=1); +### โ†’ Composer Script - use WayOfDev\PhpCsFixer\Config\ConfigBuilder; - use WayOfDev\PhpCsFixer\Config\RuleSets\DefaultSet; +- Add `scripts` section to `composer.json`: + + ```diff + { + "scripts": { + + "cs:diff": "php vendor/bin/php-cs-fixer fix --dry-run -v --diff", + + "cs:fix": "php vendor/bin/php-cs-fixer fix -v" + } + } + ``` - require_once 'vendor/autoload.php'; +### โ†’ Git - return ConfigBuilder::createFromRuleSet(new DefaultSet()) - ->inDir(__DIR__ . '/src') - ->inDir(__DIR__ . '/tests') - ->addFiles([__FILE__]) - ->getConfig(); - ``` +- Place `.build` folder file into `.gitignore` + + ```diff + +/.build/ + /vendor/ + ``` -3. Place `.php-cs-fixer.cache` file into `.gitignore` +### โ†’ GitHub Actions + +To use in GitHub Actions, do...
## ๐Ÿ’ป Usage -### โ†’ Running - Fix coding standards by simply running console command: +### โ†’ Directly + ```bash -php vendor/bin/php-cs-fixer fix -v +vendor/bin/php-cs-fixer fix -v ``` -### โ†’ Using Makefile - -To use with our `Makefile`: - -1. Add `scripts` section to `composer.json`: - - ```json - { - "scripts": { - "cs-fix": "php vendor/bin/php-cs-fixer fix -v", - "cs-diff": "php vendor/bin/php-cs-fixer fix --dry-run -v --diff" - } - } - ``` +### โ†’ Via Composer Script -2. Use `Makefile` code to run PHP-CS-Fixer tests: +To use via composer script commands: - ```bash - # Run inspections and fix code - $ make cs-fix - - # Check coding standards without applying the fix - $ make cs-diff - ``` +- Fixes code to follow coding standards using php-cs-fixer: -
+ ```bash + composer cs:diff + ``` -## ๐Ÿงช Running Tests +- Runs php-cs-fixer in dry-run mode and shows diff which will by applied: -### โ†’ PHPUnit tests + ```bash + composer cs:fix + ``` -To run tests, run the following command: +### โ†’ Using Makefile -```bash -make test -``` +**To use with `Makefile`** -### โ†’ Static Analysis +- Fixes code to follow coding standards using php-cs-fixer: -Code quality using PHPStan: + ```bash + make lint-php + ``` -```bash -make stan -``` +- Runs php-cs-fixer in dry-run mode and shows diff which will by applied: -### โ†’ Coding Standards Fixing - -Fix code using The PHP Coding Standards Fixer (PHP CS Fixer) to follow our standards: - -```bash -make cs-fix -``` + ```bash + make lint-diff + ```
@@ -158,9 +174,11 @@ You are more than welcome. Before contributing, kindly check our [contribution g ## ๐Ÿซก Contributors - - Contributors Badge - +

+ + Contributors Badge + +


diff --git a/composer.json b/composer.json index 0d1c2a27..5dbdf80e 100644 --- a/composer.json +++ b/composer.json @@ -3,6 +3,17 @@ "description": "Package adds custom rule-sets to php-cs-fixer", "license": "MIT", "type": "library", + "keywords": [ + "php-cs-fixer", + "php-cs-fixer-config", + "php-cs-fixer-rules", + "configuration", + "code-style", + "code-standards", + "code-quality", + "php", + "static-analysis" + ], "authors": [ { "name": "Andrij Orlenko",