Laravel 13.30: chunkBy() and the Storage::path() Line I Had in Production
Laravel 13.30 adds chunkBy() for adjacent grouping and finally stops Storage::path() escaping the disk root. What changed, what breaks, and what to grep for.
Laravel 13.30 adds chunkBy() for adjacent grouping and finally stops Storage::path() escaping the disk root. What changed, what breaks, and what to grep for.
An AI agent audited my Laravel app and got it wrong. Laravel Auditor's 75 evidence-first rules and read-only collectors fix the guessing problem. Here's how.
Laravel's starter kits just swapped ESLint and Prettier for Vite+ and a single vp check. What got deleted, what it costs, and how to migrate…
Herd, Sail, Lerd or ddev? The local Laravel setup argument is really one question: can you commit a file to this repo? Here is the…
Laravel 12 is the quietest major release I've shipped to production. Here's what actually changed, what didn't, and whether the upgrade is worth your Saturday.
I migrated two Laravel apps to Octane with FrankenPHP and watched p99 latency halve. Here's what broke, what I left on FPM, and the real…
I've shipped Laravel apps with Livewire, Inertia.js, and a separate React SPA. Here's how I actually choose between them, with code and a few regrets.
I moved my realtime features off Pusher to self-hosted Laravel Reverb. Here's the actual code diff, what got better, and the production gotchas that bit…
Why Filament PHP replaced my hand-rolled Laravel admin panels, the resource patterns I actually use, and where I still drop down to raw Blade.
Six weeks running Laravel Pulse in production. The recorders I turned off, the slow query that surprised me, and when I still reach for Telescope.