RSSAmplifier

Blog

freek.dev - all blogposts

All blogposts on freek.dev

freek.devRSS feed ↗20 posts

Latest posts

Flare now uses OAuth for MCP, the CLI, and API

We explain how Flare now uses OAuth to connect MCP clients, the CLI, and the API with scoped permissions instead of broad long-lived tokens. The new flow makes setup faster, adds read-only and project-level access control, and gives you one place to manage every connection. Read more

Can we make default Tailwind a more accessible choice?

A sharp look at Tailwind's default rem-based breakpoints, and the accessibility tradeoff they make. It explains how browser font-size preferences can shift layouts, why that can help some users, and why px breakpoints are still a defensible choice. Read more

Why we removed AI solutions from Flare

We explain why Flare's old AI-generated solutions no longer fit the way developers debug with modern coding agents. The replacement is a better workflow built around the MCP server, CLI, Copy for AI prompts, and agent-friendly docs. Read more

`exit()` may silently break your parallel tests

Michael explains why exit() can make parallel test workers crash without useful diagnostics, and why verbose flags do not help when the process dies outside PHPUnit's control. The fix is simple: throw an exception instead, so the failure is reported normally with a stack trace. Read more

Amped up

Sebastian explains why Amp became his default coding harness, and why user experience now matters more to him than model churn. He also shares the AGENTS.md tweaks that reduced overzealous verification during day-to-day coding. Read more

sbx: Sandboxed Claude, complete with PHP and tools

A practical walkthrough for running Claude Code inside Docker's new sbx sandbox, with a custom PHP setup and extra tools for open source work. Benjamin also explains why sandboxing AI coding agents is the sensible default. Read more

What's new in PHP 8.6

Brent surveys the most notable additions coming in PHP 8.6, including partial function application, the new polling API, readonly property defaults, and several smaller improvements and deprecations. Read more

Prevent cognitive debt by manually retyping LLM-generated code

Ankur Sethi argues that manually retyping LLM-generated code is a practical way to avoid cognitive debt. It slows you down, but helps you understand the code, catch bad suggestions, and keep a strong mental model of your codebase. Read more

We Became Editors-in-Chief, and Nobody Trained Us

An essay on how AI-assisted development turns engineers into full-time reviewers. We spend our days evaluating AI-generated diffs instead of writing code, and that shift carries a new cognitive fatigue and may widen the senior/junior gap. Read more

PHP version stats: July, 2026

Brendt shares fresh Packagist-based PHP version stats for July 2026: PHP 8.4 is now the most-used version, while PHP 8.5 reached 16% adoption after six months. He also notes that package minimum requirements still lag behind, with relatively few popular packages requiring a version that still gets active bugfix support. Read more

Building an order fulfilment workflow in Laravel

Steve King builds a real order fulfilment flow to show how a workflow engine handles long-running processes in Laravel. The post covers steps, signals, retries, branching, human approval, compensation, and the surrounding tooling in one practical example. Read more

Setting up a remote environment for agentic coding on a VPS

Mattias walks through moving an AI coding setup off a laptop and onto a private VPS. He covers Tailscale, tmux, a browser-based editor, and the small tweaks that make a remote setup practical from any device. Read more

There's no artisan schema:show, so I built one

A live, zoomable ER diagram of your Laravel app's actual database schema, safe to run in production because it only ever reads structure, never rows. Read more

Preventing SSRF in Laravel: Why Blocking Private IPs Fails

I found there wasn't any good SSRF prevention libraries for Laravel, so I built one. Very comprehensive tests based on this paper: https://www.usenix.org/conference/usenixsecurity24/presentation/wessels https://github.com/securized/laravel-ssrf Read more

PHP Attributes: What, Why, How and When

A deep dive into PHP attributes, from metadata and Reflection to practical design patterns, Laravel examples, performance, testing, and the cases where explicit code is better. Read more

Claude Code Routines: A Third Way Beyond /goal and /loop

There's a third way to automate Claude Code, and unlike /goal and /loop, it doesn't need your laptop open at all. Anthropic just shipped routines: cloud-hosted automations triggered by a schedule, an API call, or a GitHub event. Read more

Supercharge your PHP apps with Go-powered PHP extensions

A practical conference session on building PHP extensions with Go and FrankenPHP, then wiring them into Laravel and Symfony as native-feeling features. It uses an in-memory LRU cache as the example and offers a nice tour of framework flexibility and PHP internals. Read more

How I tricked Claude into leaking your deepest, darkest secrets

A sharp writeup on how a malicious site could trick Claude into exfiltrating memory-derived personal data through its web browsing flow. It walks through the attack chain, the prompt injection setup, and Anthropic's eventual mitigation. Read more

New in PHP 8.6: Faster array_map with first-class callables

In this video, Tideways shows how PHP 8.6 speeds up array_map when you use first-class callables.

The Laravel Scheduler Under the Hood

A deep dive into the Laravel Scheduler, from event registration and cron evaluation to mutexes, background processes, sub-minute tasks, and production-safe scheduling. Read more