{"id":15293905,"url":"https://github.com/lemaur/toolbox","last_synced_at":"2025-04-13T14:09:11.320Z","repository":{"id":42192496,"uuid":"363381414","full_name":"leMaur/toolbox","owner":"leMaur","description":"Tools that you need to build your next awesome Laravel project.","archived":false,"fork":false,"pushed_at":"2023-03-27T04:07:41.000Z","size":102,"stargazers_count":4,"open_issues_count":3,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-04-13T14:08:45.635Z","etag":null,"topics":["code-standards","code-style","coverage","dusk","larastan","laravel","laravel-framework","pest","php-cs-fixer","phpstan","phpunit","rector","static-analysis","test","testing","unit-test"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/leMaur.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":".github/SECURITY.md","support":null},"funding":{"github":"lemaur"}},"created_at":"2021-05-01T10:23:17.000Z","updated_at":"2023-09-03T09:39:42.000Z","dependencies_parsed_at":"2023-02-12T20:16:23.506Z","dependency_job_id":null,"html_url":"https://github.com/leMaur/toolbox","commit_stats":null,"previous_names":[],"tags_count":18,"template":false,"template_full_name":"spatie/package-skeleton-laravel","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leMaur%2Ftoolbox","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leMaur%2Ftoolbox/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leMaur%2Ftoolbox/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leMaur%2Ftoolbox/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/leMaur","download_url":"https://codeload.github.com/leMaur/toolbox/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248724630,"owners_count":21151561,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["code-standards","code-style","coverage","dusk","larastan","laravel","laravel-framework","pest","php-cs-fixer","phpstan","phpunit","rector","static-analysis","test","testing","unit-test"],"created_at":"2024-09-30T16:53:38.226Z","updated_at":"2025-04-13T14:09:11.294Z","avatar_url":"https://github.com/leMaur.png","language":"PHP","funding_links":["https://github.com/sponsors/lemaur","https://github.com/sponsors/leMaur","https://github.com/sponsors/leMaur?frequency=one-time\u0026sponsor=leMaur"],"categories":[],"sub_categories":[],"readme":"# Tools for Artisan!\n\nToolbox full of useful packages to keep your **Laravel** project compliant with your coding standards.   \nIt provides a minimum configuration to help you start with `static analysis`, `code styling` and `testing`.\n\n[![Latest Version on Packagist](https://img.shields.io/packagist/v/lemaur/toolbox.svg?style=flat-square)](https://packagist.org/packages/lemaur/toolbox)\n[![Total Downloads](https://img.shields.io/packagist/dt/lemaur/toolbox.svg?style=flat-square)](https://packagist.org/packages/lemaur/toolbox)\n[![License](https://img.shields.io/packagist/l/lemaur/toolbox.svg?style=flat-square\u0026color=yellow)](https://github.com/leMaur/toolbox/blob/master/LICENSE.md)\n[![GitHub PHPMD](https://img.shields.io/github/actions/workflow/status/lemaur/toolbox/phpmd.yml?label=PHPMD\u0026style=flat-square)](https://github.com/leMaur/toolbox/actions/workflows/phpmd.yml)\n[![GitHub Sponsors](https://img.shields.io/github/sponsors/lemaur?style=flat-square\u0026color=ea4aaa)](https://github.com/sponsors/leMaur)\n[![Trees](https://img.shields.io/badge/dynamic/json?color=yellowgreen\u0026style=flat-square\u0026label=Trees\u0026query=%24.total\u0026url=https%3A%2F%2Fpublic.offset.earth%2Fusers%2Flemaur%2Ftrees)](https://ecologi.com/lemaur?r=6012e849de97da001ddfd6c9)\n\n## What's Included\n- [Laravel Debugbar](https://github.com/barryvdh/laravel-debugbar)\n- [Laravel Ide Helper](https://github.com/barryvdh/laravel-ide-helper)\n- [Analyzer](https://github.com/GrahamCampbell/Analyzer)\n- [Infection](https://github.com/infection/infection)\n- [Phpunit SpeedTrap](https://github.com/johnkary/phpunit-speedtrap)\n- [Laravel Dusk](https://github.com/laravel/dusk)\n- [Laravel Sail](https://github.com/laravel/sail)\n- [Larastan](https://github.com/nunomaduro/larastan)\n- [Pest](https://pestphp.com)\n- [Phpunit](https://github.com/sebastianbergmann/phpunit)\n- [Rector](https://github.com/rectorphp/rector)\n- [Security Advisories](https://github.com/Roave/SecurityAdvisories)\n- [Laravel Ray](https://github.com/spatie/laravel-ray)\n\n## Support Me\n\nHey folks,\n\nDo you like this package? Do you find it useful, and it fits well in your project?\n\nI am glad to help you, and I would be so grateful if you considered supporting my work.\n\nYou can even choose 😃:\n* You can [sponsor me 😎](https://github.com/sponsors/leMaur) with a monthly subscription.\n* You can [buy me a coffee ☕ or a pizza 🍕](https://github.com/sponsors/leMaur?frequency=one-time\u0026sponsor=leMaur) just for this package.\n* You can [plant trees 🌴](https://ecologi.com/lemaur?r=6012e849de97da001ddfd6c9). By using this link we will both receive 30 trees for free and the planet (and me) will thank you. \n* You can \"Star ⭐\" this repository (it's free 😉).\n\n## Installation\n\nInstall the package via composer:\n```bash\ncomposer require lemaur/toolbox --dev \n```\n\nif you still using php8.0 you should use:\n```bash\ncomposer require \"lemaur/toolbox:^3.2\" --dev\n```\n\nLaunch the installation:\n\u003e Be careful, this package was created to be used on a fresh new Laravel project.  \n\u003e Commands listed below will OVERWRITE your existing files!\n\nIf you install this package in a fresh Laravel installation, you can simply run:\n\n```bash\nphp artisan toolbox:install\n```\n\n⬇️ configure only Pest and Dusk test suites. [Those files will be overwritten](/src/Commands/PublishCommand.php#L42).\n```bash\nphp artisan toolbox:install --test-suites\n```\n\nOtherwise, you can install only the group of files you need without test suites:\n\n⬇️ will overwrite [phpstan.neon](/src/Commands/PublishCommand.php#L23).\n```bash\nphp artisan toolbox:install --only=\"static-analysis\"\n```\n\nor you can specify multiple values, ⬇️ will overwrite [phpstan.neon](/src/Commands/PublishCommand.php#L23) and [pint.json](/src/Commands/PublishCommand.php#L27).\n```bash\nphp artisan toolbox:install --only=\"static-analysis\" --only=\"code-style\"\n```\n\nAvailable values for the `--only` option:\n```bash\n- static-analysis\n- code-style\n- refactor\n- tests\n- common\n```\n\nAdd those scripts to your `composer.json`:\n```bash\n\"scripts\": {\n    \"ide-helper\": [\n        \"@php artisan ide-helper:models --write-mixin --reset\",\n        \"@php artisan ide-helper:generate\",\n        \"@php artisan ide-helper:eloquent\",\n        \"@php artisan ide-helper:meta\"\n    ],\n    \"analyse\": \"./vendor/bin/phpstan analyse --memory-limit=2G\",\n    \"refactor\": \"./vendor/bin/rector process  --memory-limit=2G\",\n    \"format\": \"./vendor/bin/pint\",\n    \"test\": \"./vendor/bin/pest --exclude-group=e2e\",\n    \"test:fast\": \"./vendor/bin/pest --exclude-group=e2e --parallel\",\n    \"test:coverage\": \"./vendor/bin/pest --exclude-group=e2e --coverage --min=50 --coverage-html=.coverage --coverage-clover=coverage.xml\",\n    \"test:e2e\": \"@php artisan pest:dusk\",\n    \"test:mutation\": [\n        \"Composer\\\\Config::disableProcessTimeout\",\n        \"XDEBUG_MODE=coverage vendor/bin/infection --show-mutations --threads=4 --only-covering-test-cases --min-msi=25 --min-covered-msi=85 --test-framework=pest --test-framework-options='--configuration=phpunit.xml --exclude-group=e2e'\"\n    ]\n}\n```\n\nAllow plugins to be executed by Composer, by putting these lines on `composer.json`:\n```bash\n\"config\": {\n    ...\n    \"allow-plugins\": {\n        \"phpstan/extension-installer\": true,\n        \"pestphp/pest-plugin\": true,\n        \"infection/extension-installer\": true\n    }\n}\n```\n\n## Available Commands \n\nGenerate PHPDoc for your models and   \nother (helpful for your IDE and static analysis tools) [for more info](https://github.com/barryvdh/laravel-ide-helper#usage)\n```bash\ncomposer ide-helpers\n```\n\nRun code refactoring [for more info](https://github.com/rectorphp/rector)\n```bash\ncomposer refactor\n```\n\nRun code style formatting [for more info](https://github.com/FriendsOfPHP/PHP-CS-Fixer)\n```bash\ncomposer format\n```\n\nRun static analysis [for more info](https://github.com/nunomaduro/larastan)\n```bash\ncomposer analyse\n```\n\nRun tests [for more info](https://pestphp.com)\n```bash\ncomposer test\n```\n\nRun tests with coverage [for more info](https://pestphp.com/docs/coverage)\n```bash\ncomposer test:coverage\n```\n\nRun e2e tests [for more info](https://pestphp.com/docs/plugins/laravel#laravel-dusk)\n```bash\ncomposer test:e2e\n```\n\nRun mutation tests [for more info](https://infection.github.io/guide)\n```bash\ncomposer test:mutation\n```\n\n## Changelog\n\nPlease see [CHANGELOG](CHANGELOG.md) for more information on what has changed recently.\n\n## Contributing\n\nPlease see [CONTRIBUTING](.github/CONTRIBUTING.md) for details.\n\n## Security Vulnerabilities\n\nPlease review [our security policy](../../security/policy) on how to report security vulnerabilities.\n\n## Credits\n\n- [Maurizio](https://github.com/lemaur)\n- [All Contributors](../../contributors)\n\n## License\n\nThe MIT License (MIT). Please see [License File](LICENSE.md) for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flemaur%2Ftoolbox","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flemaur%2Ftoolbox","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flemaur%2Ftoolbox/lists"}