How I build with Laravel
I am a developer in Leeuwarden and I build with Laravel when an application is more than pages: users, permissions, data. My base is the TALL stack: Tailwind, Alpine.js, Laravel and Livewire. This is how I go about it.
- Laravel
- Leeuwarden, NL
- 1 project
What I look after
What I do again in every Laravel application.
-
From database to interface
I build a feature through every layer in one go: migration, model, logic and the screen that goes with it. That is how I picked up parts of the MVP of EcoMobi.
-
Livewire for interaction
Forms, filters and boards that respond without a separate JavaScript app beside them. Alpine.js fills in where it is something small.
-
Components you reuse
Blade and Livewire components with one job. In EcoMobi one text input is used 62 times across the app.
-
Roles and permissions
User management with roles and permissions, and boards you invite people to by e-mail.
-
Data from outside
An API route that fetches data from external sources and stores it, ready to be visualised.
-
Tested and documented
Unit tests with Pest and written documentation of the architecture, so a team can carry on without me.
What did I build at EcoMobi?
EcoMobi is a policy support system for rural municipalities moving to sustainable mobility. It makes the information behind policy choices easier to reach and gives residents a part in them. I worked on it for five months, during my internship at Concept7.
Laravel and Livewire were both new to me. After a few practice projects I picked up parts of the MVP of my own, from database to interface, with every merge request reviewed. My work is in the product: fetching data from external sources, boards you share, archive and reorder by dragging, user management with roles and permissions, and a set of shared components.
Next to that I went through the accessibility against WCAG 2.2 (labels, ARIA labels and contrast), wrote unit tests with Pest, added a dark mode and documented the architecture, so the team could carry on without me.
- 5 months
- 62
- WCAG 2.2
Built with Laravel
A data platform I helped build at Concept7.
- Alpine.js
- Filament
- JavaScript
- Livewire
- PHP
- Tailwind
How I work
Clear decisions, short loops and something real to react to.
-
Find the actual need
Before choosing a stack, I clarify the goal, the user and the smallest version worth building.
-
Build the right amount
I choose the simplest stack that fits, then move quickly into something real enough to test and improve.
-
Refine the experience
Responsive behaviour, subtle motion, accessible choices, readable code and a clear CMS turn a working build into a finished product.
Questions
What I often hear about it.
-
For an application with forms, tables and boards Livewire is enough: the logic stays in one place, in PHP, and the screens need no API of their own.
-
I choose the simplest stack that fits. Content someone manages: WordPress. An application with users, permissions and a lot of data: Laravel. A product where the interface weighs most: Next.js.
-
With tests, readable code and documentation of the architecture. That is how I left my work on EcoMobi, where every merge request was reviewed by my supervisor.
-
Yes, for admin screens. EcoMobi uses it next to Livewire.
Which stack when
I choose the simplest one that fits.
| Stack | When |
|---|---|
| WordPress | Content someone manages themselves: a site, a portfolio, a blog. |
| Expo | Something you carry with you and that has to remind you: an app. |
| Next.js | A product with accounts, logic of its own or a lot of interaction. |
| Laravel | An application with users, permissions and a lot of data. |
