Laravel Articles
Backend architecture, Eloquent, queues and everything Laravel.
Building a Settings System Clients Can Actually Use
Hard-coded text is the number one reason clients email you for trivial changes. A simple key-value settings table fixes it — if you get the caching an...
Deploying Laravel to Shared Hosting Without Losing Your Mind
No SSH, no symlinks, a document root you cannot change. Plenty of clients are on cPanel, and Laravel can absolutely run there — with a specific set of...
Writing Laravel Tests That Are Worth Maintaining
A test suite that breaks every time you rename something is a liability. Here is what I test, what I deliberately do not, and why the ratio matters.
File Uploads in Laravel: Storage, Validation and Serving
Uploads look like a solved problem until you deploy to shared hosting without symlinks, or someone uploads a PHP file named avatar.png.
Laravel Caching Strategies That Survive Real Traffic
Caching is easy to add and hard to invalidate. Here are the patterns that hold up — and the one mistake that serves stale data to everyone for an hour...
Database Indexing: When to Add One and When It Hurts
Indexes make reads fast and writes slower. Most performance problems come from missing one obvious index — and most of the rest come from adding twelv...
Laravel Security: The Ten Things I Check Before Every Launch
Laravel gives you strong defaults, but defaults do not protect you from the things you actively configured wrong. This is my pre-launch security pass.
Eloquent Relationships Explained With Real Examples
hasMany, belongsToMany, hasManyThrough, morphTo — the docs explain the syntax. This explains when you actually reach for each one.
Laravel Queues in Production: Jobs, Failures and the Things That Bite
Moving work to a queue is easy. Keeping that queue healthy at 3am when a third-party API is down is the part nobody writes about.
Got a project worth building?
I write about this work because I do it every day. Tell me what you are building.