Today’s recommendations: Laravel in Production: Eloquent Speed, Monitoring & Error Tracking

Most of my Laravel bookmarks lately have been about the unglamorous half of the job: what happens after the feature works and has to survive real traffic. This batch is exactly that: making queries cheap, keeping the app fast, and actually seeing what’s breaking.

Eloquent Is Doing Too Much (And Your Database Is Paying the Price) This article examines the SQL Eloquent quietly generates: N+1 loops, unwanted SELECT * queries, casts on unread columns, and forgotten global scopes. It begins with visibility through Telescope, DB::enableQueryLog(), toSql(), EXPLAIN, and preventLazyLoading() before prescribing eager loading, narrower select() calls, exists() instead of count() > 0, withCount(), chunking, and composite indexes. Its top three priorities are N+1 queries, missing indexes, and unnecessary column loading. That order makes sense to me.

The Tips Behind API Artisan: Building Laravel APIs Developers Actually Want to Use Steve McDougall condenses the reasoning from his free API book into field notes. He treats an API as a product with users and asks whether it is livable, beyond merely working. That leads to contract-first design, versioning from day one, RFC 9457 Problem+JSON for every error, idempotency keys, append-only audit logs, and a Form Request payload() method that converts validated input into an immutable typed value object. The article stands on its own even without the book.

In-depth PHP articles (r/PHP discussion) A community thread where people exchange detailed, non-beginner PHP articles that are increasingly hard to find through search. The comments form a human-curated reading list, and I saved several links for later.

Monitor Laravel Queues, Commands, and Schedulers on Any Driver with Vigilance Vigilance is a self-hosted dashboard that records the full lifecycle of jobs, artisan commands, and scheduled tasks, queued → running → done/failed, with parameters, exit codes, and redacted exception traces. The selling point over Horizon (Redis-only) and Telescope (local debugging) is that it’s driver-agnostic: database, Redis, SQS, Beanstalkd, and sync all report into one timeline. It samples successful runs but keeps every failure, can dispatch jobs from typed forms via reflection, and even collects Core Web Vitals. Requires PHP 8.2+, Laravel 12/13, Livewire 3.5+/4.

Boost Laravel Performance: Running Octane with FrankenPHP in Production (Zero Downtime) A practical guide to running Octane on FrankenPHP in production. It covers installation, a production Caddyfile with security and caching headers, Supervisor configuration, a custom binary with extra extensions, and a deployment script ending in octane:reload. I am saving the configuration for the next project I move away from PHP-FPM.

laravel-error-tracker A Laravel-first, self-hosted error tracker with framework-native exception capture, local or shared database storage, fingerprint-based grouping, filtered dashboard searches, project-aware stack traces, mail and Slack alerts, optional GitHub issue links, and an opt-in feedback form. Its conservative redaction defaults omit raw secrets and arguments and normalize paths, which matters before deploying an error tracker to production.