Engineering,
taught
&
leadership,
practised.
I'm Steven — CTO at Digitonic, a PHP engineer since 2010 and a keen golfer with a terrible handicap. This is where I write it all down.
Latest from the journal
Test Filament v5 Resources with Pest
Filament resource pages are Livewire components, not URLs. Point livewire() at the page class and you get table, form and action assertions that run in milliseconds.
Filament v5 Authorization: Policies, Roles and Permissions Complete Guide
A policy alone will not stop a user seeing every row in your table. Here are the four layers of Filament v5 authorization - panel access, policies, query scoping and field visibility - wired together and covered by tests.
Share One Laravel Pint Config Across Every Project
Every repo ends up with a slightly different pint.json, and formatting drifts until code review is nothing but style nits. Here is how I ship one canonical Pint config as a Composer package and point every project at it.