Blog
#Laravel
Deep dives, build logs, and stories from the Codenzia team — about shipping products, running engineering, and growing teams.
Filament v4: what changed, and what it costs to upgrade
We moved eleven production panels to Filament v4. Here is the short list of breaking changes that actually cost us time, and the ones the upgrade guide handles for you.
We cut a nine-second dashboard to under one second
No new servers, no caching layer, no rewrite. Three query fixes and one queued report were enough to make a logistics dashboard usable again.
Authorization is not a form field
Hiding a button is a user-interface decision. If that is the only thing standing between a low-trust user and a published page, you do not have authorization — you have a suggestion.
Storing translations without a column per language
A title_en and title_ar pair works until the third language. Here is the storage shape we standardised on across every bilingual product we run.
Shipping a Flutter app and a Laravel panel from one spec
Two codebases, two release cadences, one product. The thing that keeps them honest is not a shared library — it is a shared definition of done.