Modernizing My Dotfiles
Stefan Zweifel shares how he reorganized his dotfiles into a minimal setup, split private config into a separate repo, and streamlined setup and Brewfile syncing with a few small scripts.
Read more [stefanzweifel.dev]
Stefan Zweifel shares how he reorganized his dotfiles into a minimal setup, split private config into a separate repo, and streamlined setup and Brewfile syncing with a few small scripts.
Read more [stefanzweifel.dev]
Over the years, I've built up a collection of aliases, shell functions, and CLI tools that make my terminal feel like home. All of it lives in a single repository: my dotfiles.
It's a backup of every terminal tool and configuration I rely on, and it means I can set up a brand new Mac from scratch in about five minutes. Colleagues at Spatie use it as a starting point for their own setups too.
Let me walk you through what's in there. I'll cover the tools and tricks first, with installation and setup further down.
Join 9,500+ smart developers
Get my monthly newsletter with what I learn from running Spatie, building Oh Dear, and maintaining 300+ open source packages. Practical takes on Laravel, PHP, and AI that you can actually use.
No spam. Unsubscribe anytime. You can also follow me on X.
"Freek publishes a super resourceful and practical newsletter. A must for anyone in the Laravel space"
– bun.com
Jarred Sumner explains why the Bun team is moving from Zig to Rust, after years of fighting memory safety issues in a codebase that mixes GC and manual memory management. He also shares how Claude helped make a mechanical, test-suite-driven rewrite realistic without pausing feature work for a year.
Read more [bun.com]
– albertoarena.it - submitted by Alberto Arena
CLAUDE.md isn't documentation, it's working memory. A practical approach to keeping it lean and focused instead of letting it grow into an unreadable 300-line dumping ground.
Read more [albertoarena.it]
– www.conroyp.com - submitted by Paul Conroy
Agentic commerce is a buzzy term, but is still pretty abstract for developers asking what they can actually build today. This post explains MPP through a working Laravel example, and introduces the new square1/laravel-mpp package.
Read more [www.conroyp.com]
– lukapeharda.com - submitted by Luka Peharda
Every year I dread coming back from vacation not because of the work, but because I have no idea where I left off. A failing test, a well-written TODO, and a slow first day back are all you need to ease back in.
Read more [lukapeharda.com]
– wendelladriel.com - submitted by Wendell Adriel
A practical deep dive into UUIDs, ULIDs, and Sqids, from generation models and sorting behavior to database storage, public IDs, and security trade-offs.
Read more [wendelladriel.com]
Nick Houtman shares how AI is reshaping UX work: clients arrive with better prototypes, common patterns get safer and more generic, and real research still matters most.
Read more [spatie.be]
Laravel now supports attaching arbitrary metadata to routes, and the latest laravel-flare client shows that context in error reports and performance traces.
Read more [flareapp.io]
– wendelladriel.com - submitted by Wendell Adriel
A deep dive into Laravel Context, from request metadata and automatic log enrichment to hidden context, scoped values, queues, scheduled commands, and internals.
Read more [wendelladriel.com]
A lovely growing index of colors, each with its own provenance, chemistry, and often grim history. Beautifully made, and exactly the kind of rabbit hole I enjoy falling into.
Read more [storiedcolors.com]
Matt Pocock shows how his /teach skill turns Claude Code into a personalized teacher that adapts lessons to your goals, level, and progress. It creates structured lessons, resources, quizzes, and a learning record so you can keep building on what you learned.
Read more [www.aihero.dev]
Mijndert Stuij shares a bunch of practical ways to make your terminal feel instant, from skipping shell frameworks and caching completions to lazy-loading slow tools. A good reminder that tiny bits of latency add up fast when you live in your terminal all day.
Read more [mijndertstuij.nl]
A look at the new experimental headingoffset attribute, which lets heading levels adapt to their context instead of hardcoding h2s and h3s. A thoughtful explanation of where this could be genuinely useful, especially in component-based UIs.
Read more [www.matuzo.at]
– wendelladriel.com - submitted by Wendell Adriel
Learn how Expressive can improve a Laravel application by keeping Eloquent as the database layer while moving business logic to fully typed objects.
Read more [wendelladriel.com]
– wendelladriel.com - submitted by Wendell Adriel
Learn how to use Eloquent Query Classes to organize important database logic in Laravel without adding a full repository layer.
Read more [wendelladriel.com]
A concise explanation of ADRs: short documents that capture an important decision, the context behind it, and its consequences. Good practical advice on keeping them lightweight, readable, and useful over time.
Read more [martinfowler.com]
– mujahidabbas.dev - submitted by Muhammad Mujahid Abbas
Every Laravel RAG tutorial builds the same ingestion pipeline (chunk, embed, store) and stops the moment the agent answers on screen. None of them check whether retrieval is any good. But retrieval quality is decided at ingestion, before the model runs once, and four decisions there fail with no error, no exception, no failed test:
answer@1 falls while source hit@1 still looks healthy.vector_l2_ops while you query with cosine <=>. Postgres silently ignores the index and scans every row. Laravel 13's native whereVectorSimilarTo() hardcodes <=>, so it's easier to hit than ever. Shown with EXPLAIN.vector(1536) column type, so "shrink it to save storage" is a migration plus a full re-embed that quietly drops retrieval to 47%.Each bug is real code from a working repo, proven against an eval suite. It's the prequel to my earlier "Evaluating RAG in Laravel" post: build it, prove it, tune it. Every example verified against laravel/ai v0.7.2 and pgvector, with the full repo to clone.
Read more [mujahidabbas.dev]
– koomai.net - submitted by Sid
How we use class-based Laravel Pennant features, with a kill switch on every flag and a config-driven path to general availability.
Read more [koomai.net]
Bert De Swaef shows how PHP attributes made his Livewire components easier to read by attaching validation, URL sync, and event listeners directly to the properties and methods they belong to. Nice piece on how attributes reduce mental overhead, improve IDE support, and make components feel more self-documenting.
Read more [bert.gent]