Articles Tooling
TAG ARCHIVE

Everything on Tooling.

20 articles tagged Tooling, sorted newest first.

rector

Write a Custom Rector Rule to Refactor Your Own Laravel Conventions

Rector gets used for framework upgrades and almost never for the thing it is best at — mechanically applying a decision your own team made. Here's the AST-first workflow, and the two mistakes that make a new rule silently do nothing.

12 min read
composer

Find the Composer Packages Your Laravel App Doesn't Actually Use

Every long-lived Laravel app carries packages nobody uses and packages nobody declared. Here is how to find both, survive the false-positive wall, and gate the check in CI.

10 min read
tooling

Profile a Slow Laravel Endpoint: SPX, Blackfire and Reading a Flame Graph Properly

Everyone can generate a flame graph. Almost nobody can read one. Here is the loop from a four-second endpoint to a merged fix, and why Kernel::handle is never the answer.

15 min read
phpstan

Write a Custom PHPStan Rule to Enforce Your Laravel Conventions

Some conventions live only in reviewers' heads, so they rot. A PHPStan custom rule moves one of them into CI permanently — here is the whole build, including the test.

11 min read
laravel

PCOV vs Xdebug for Laravel Code Coverage

Coverage needs a driver, and the one you pick decides whether your suite runs in seconds or minutes. Here is how PCOV and Xdebug actually differ, and how to wire each one up locally and in CI.

9 min read
pint

Share One Laravel Pint Config Across Every Project

Every repo ends up with a slightly different pint.json, and formatting drifts until code review is nothing but style nits. Here is how I ship one canonical Pint config as a Composer package and point every project at it.

9 min read
laravel

Set Up a Fast Local Laravel Environment with Herd

Get a native Laravel dev environment running on macOS with Herd — no Docker, no Homebrew PHP. Install, serve on .test, pin PHP, and add HTTPS.

7 min read
debugging

Debug Livewire and Eloquent Faster with Spatie Ray

Stop halting requests with dd() and scribbling over pages with dump(). Spatie Ray sends Laravel debug output to a desktop app so you can watch queries, events and Livewire state live.

7 min read
duster

Duster: Run Pint, PHPStan, and Rector with One Command

A mature Laravel app ends up with four code-quality tools, four configs, and four CI steps. Here's how Duster collapses them into one command — and when that's actually worth it.

7 min read
peck

Catch Spelling Mistakes in Your Laravel Codebase with Peck

Typos harden into method names, routes, and API fields you can't rename without a breaking change. Here's how I wire Peck into a Laravel project to catch them before they ship.

7 min read
laravel

Tail Laravel Logs in Real Time with Pail (Filters, Levels, and Users)

Stop scrolling storage/logs/laravel.log. Pail gives you a filtered, driver-agnostic live log stream right in your terminal.

6 min read
pest

PestStan — Type-Safe Pest 4 Tests With PHPStan Generics in a Laravel App

PestStan teaches PHPStan about Pest's globals — generic expect() types, proper $this binding, and rules that catch broken assertions before the test even runs.

9 min read
pest

Pest 4 Snapshot Testing for Laravel API Responses: Catch Accidental Schema Drift

Pest 4 has snapshot testing built in. One expectation locks down the shape of your JSON responses so renamed keys and disappearing fields stop slipping into production unnoticed.

8 min read
pest

Pest 4 Browser Testing with Playwright: A Dusk Replacement That Actually Sticks

Pest 4 ships a first-party browser plugin powered by Playwright. Auto-waits, parallel runs, and time-balanced shards turn a 12-minute Dusk suite into a 90-second CI job.

9 min read
rector

Rector PHP: Automate Laravel Upgrade Refactors

Stop hand-editing hundreds of files when bumping PHP or Laravel versions. Here's how to wire Rector into a Laravel project, run it safely, and write a custom rule for the patterns specific to your codebase.

8 min read
laravel

Laravel Pennant Feature Flags in Practice

Laravel Pennant gives you first-party feature flags without an external service. Here's how to use it for gradual rollouts, middleware gates, and reliable testing.

7 min read
laravel

Laravel Telescope vs Debugbar vs Pulse: Which Monitoring Tool When

Laravel ships three monitoring tools and most teams install all three without knowing which does what. Here's when to reach for each one.

7 min read
laravel

PHPStan Level 10 in Laravel: Fix the 5 Most Common Errors

Bumped Larastan to level 10 and got 300 new errors? Here are the five patterns you'll see again and again: and the exact fix for each.

6 min read
laravel

The Complete Laravel Developer Toolchain for 2026

Stop spending days configuring tools. Here is every tool in my Laravel stack for 2026, why I chose each one, and exactly how to set it up.

18 min read
laravel

Running Laravel Pint Automatically with Git Pre-Commit Hooks

CI failing because someone forgot to run Pint again. Here's how to wire up a Git pre-commit hook so it never slips through.

4 min read