From the Blog
Articles on infrastructure, Laravel & open source
How Hard Can US Sales Tax Be
I was building a billing engine, so I had to handle tax. The EU was hard but knowable. Then I looked at the US and said the sentence that sits right at the peak of the Dunning-Kruger curve. What came out the other side was not tax logic, it was an ETL pipeline against forty government websites.
One Identity Layer Instead of Five
Every product needs login, organizations, roles, SSO and an audit trail. I had built that more than once, a little differently each time. Identity is the last thing you want five diverging copies of, so it became laravel-id: a contract-driven auth and identity framework for Laravel.
2026
The Code We Kept Rewriting
SSRF guards, risk scoring, jurisdiction lookups, DNS reads. The same logic was already in production across several projects, written fresh each time and tuned to each one. Maintaining five copies stopped making sense, so I pulled each into a single open source package.
Why I Built a Collector-Free Telemetry Package for Laravel
Sentry and Nightwatch showed green while customers saw errors. Nothing ever threw, and sampling dropped exactly the requests that mattered. That incident, collector fatigue on Kubernetes, and a family of packages that all needed metrics became "Telemetry for Laravel".
Queue Autoscale v3 is here
A predictive scaling rewrite, worker topology with exclusive and grouped queues, and multihost cluster orchestration. Plus the embarrassing bug that has been silently overprovisioning workers by 1000x.
Launching Queue Monitor for Laravel
Full queue visibility without Horizon or Redis. Queue Monitor for Laravel tracks every job on any driver (database, SQS, Beanstalkd) with one composer require and a migration.
Launching Health for Laravel
I released cboxdk/laravel-health today. Installed it on cbox.dk, opened the dashboard, and immediately found two bugs. The OS version showed "unknown" and my Hetzner VM was detected as a container. Dogfooding works.
New Website for Dansk Pinto Forening
I launched pinto.dk today. Built with Statamic, with collections for breeding programs, stallion registries, rating results, and a horse database mapped from decades of breeding data.
Statamic MCP v2.0: Out of Beta
Statamic MCP v2 is released. OAuth 2.1 for ChatGPT, file and database storage drivers, a full CP dashboard, 21 scoped permissions, audit logging, and a router architecture that replaced 140+ tools with 11. Statamic 6 only.
Predictive Queue Autoscaling with Little's Law
How I built an SLA-driven autoscaler for Laravel queues using queueing theory, trend prediction, and backlog drain algorithms. Replacing arbitrary worker counts with math.
Zero-Dependency System Metrics in Pure PHP
Why I built a system metrics library with no extensions, no Composer dependencies, and no C bindings. Reading /proc and sysctl directly gives you better container awareness than most monitoring agents.
Monitoring PHP-FPM in Production: A Complete Stack
How Cbox FPM Exporter and Cbox Init work together to give you full observability over PHP-FPM pools, OPcache, and Laravel queues. From FastCGI status pages to Prometheus dashboards.
Safety Nets for Claude Code with --dangerously-skip-permissions
The flag skips permission prompts, not all safety controls. Hooks can block tool calls before execution. Deny rules still apply. Sandboxing still restricts filesystem and network. Here is how to layer them.
Health Checks and Kubernetes Probes for Laravel
Liveness, readiness, and startup probes are how Kubernetes decides if your pod is healthy. Health for Laravel gives you a clean API for all three, plus Prometheus metrics.
2025
Redesigning Statamic MCP: Fewer Tools, Better AI Reasoning
Version 1 exposed 140+ individual tools. Version 2 consolidates them into 11 router-based tools. Here is why fewer tools means better AI performance.
Connecting Statamic to AI Assistants with MCP
The Model Context Protocol lets AI assistants interact with your Statamic site directly. Here is how Statamic MCP gives Claude, Cursor, and ChatGPT access to your content model.
Reverse Relationships in Statamic: A Single Source of Truth
If entry B references A, why can't A see all the B's that reference it? Statamic Reverse Relationship solves bidirectional traversal without data duplication.
Visual Collection Filtering in Statamic Without Code
Your editors should not need a developer every time they want to filter a collection differently. Statamic Filter Builder adds a visual query builder to the control panel.
Open Source Momentum
A year at Laravel gave me experience I could not have gotten anywhere else. Now that chapter is done, and there is a backlog of open source work to ship. Statamic MCP rewrite, new addons, and more infrastructure tooling.
Leaving Laravel
I have decided to leave Laravel at the end of this month. It has been a dream job. I worked on the queue manager, custom eBPF projects, and other systems that push the boundaries of what we can do at scale.