Installation:
composer require sikessem/devtools --dev --with-all-dependencies
Or add to composer.json under require-dev:
"sikessem/devtools": "^1.5"
Publish Configurations (if needed):
php artisan vendor:publish --provider="Sikessem\DevTools\DevToolsServiceProvider"
This publishes optional configs for tools like PHPStan, Pest, or Rector.
First Use Case:
Replace dd() with the enhanced dumping tool:
use Sikessem\DevTools\dd;
dd($user); // Now integrates with Laravel Debugbar/Ray if installed
Run IDE Helpers (for autocompletion):
php artisan devtools:ide-helpers
Verify Installation: Check if tools like Pest or PHPStan are now available in your project.
Debugging Workflow:
dd() with \Sikessem\DevTools\dd() for enhanced dumping (supports Debugbar/Ray integration).php artisan devtools:debugbar to toggle Debugbar visibility.Testing Workflow:
test('user can login', function () {
$response = $this->post('/login', ['email' => 'test@example.com']);
$response->assertStatus(200);
});
./vendor/bin/pest
Static Analysis:
./vendor/bin/phpstan analyse
Refactoring:
./vendor/bin/rector process src --dry-run
IDE Integration:
php artisan devtools:ide-helpers
.env and config/ files to reflect new helpers.Automation:
sail up
sail artisan migrate
Livewire/Blade Testing:
test('counter increments', function () {
$this->livewire(Counter::class)
->assertSee('0')
->call('increment')
->assertSee('1');
});
Daily Debugging:
\Sikessem\DevTools\dd() instead of dd() for richer output.php artisan devtools:debugbar.Test-Driven Development (TDD):
./vendor/bin/pest --watch for real-time feedback.Code Reviews:
# .github/workflows/ci.yml
jobs:
test:
runs-on: ubuntu-latest
steps:
- run: ./vendor/bin/phpstan analyse --level=5
- run: ./vendor/bin/rector process --dry-run
Onboarding New Developers:
php artisan devtools:install to set up IDE helpers and configs.Legacy Code Refactoring:
./vendor/bin/rector process src --set="laravel-100"
Selective Tool Adoption:
composer require pestphp/pest --dev
composer.json:
"replace": {
"pestphp/pest": "2.0"
}
Configuration Merging:
php artisan vendor:publish --tag=phpstan-config
phpstan.neon to retain custom rules.CI/CD Optimization:
steps:
- uses: actions/cache@v3
with:
path: vendor
key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }}
--dry-run in production).Laravel Service Providers:
config/app.php:
'providers' => [
// ...
Sikessem\DevTools\DevToolsServiceProvider::class,
],
Customizing Commands:
php artisan vendor:publish --tag=devtools-commands
Dependency Conflicts:
composer why-not to diagnose conflicts and manually override dependencies in composer.json.PHP Version Requirements:
php -v and update if necessary.Configuration Overrides:
php artisan vendor:publish --tag=phpstan-config
Performance Overhead:
./vendor/bin/phpstan analyse --level=3 # Lower strictness for speed
Debugbar/Ray Duplication:
Laravel Version Compatibility:
IDE Helpers Issues:
php artisan devtools:ide-helpers --force to overwrite or manually merge changes.Command Not Found:
pest, phpstan) isn’t recognized, ensure it’s installed via Composer:
composer require --dev pestphp/pest
Debugbar Not Showing:
app/Http/Kernel.php:
protected $middleware = [
// ...
\Sikessem\DevTools\Http\Middleware\Debugbar::class,
];
Pest Tests Failing:
composer require --dev orchestra/testbench
PHPStan Errors:
phpstan.neon:
includes:
- vendor/sikessem/devtools/config/phpstan.neon
levels:
- 1
- 2
- 3
- 5
- 8
Rector Dry Run Failing:
--dry-run fails, check for syntax errors in your code or ruleset:
./vendor/bin/rector process --dry-run --verbose
How can I help you explore Laravel packages today?