Wat is Laravel?
Laravel is een gratis, open source web PHP framework en is één van de meest populaire web frameworks. Een framework is eigenlijk een basis voor een software applicatie. Zo'n framework heeft allerlei ingebouwde ondersteuning om sneller functionaliteiten te implementeren en biedt een "gestandardiseerde" manier van werken, zodat developers met kennis van het framework sneller mee kunnen werken aan de broncode en herbruikbare componenten gebouwd kunnen worden. Laravel laat ons toe om snel custom web applicaties te bouwen omdat Laravel out-of-the-box veel functionaliteit en de nodige flexibiliteit aan biedt. Rond Laravel is er een grote open source community die extra features, componenten en integraties met third party tools heeft ontwikkeld, waar wij verder kunnen op bouwen. Daarnaast zijn er ook heel wat officiële packages en tools die bijkomende functionaliteiten aanbieden, bv. Filament, Laravel Nova, Socialite om in te loggen met social media accounts, Sanctum voor authenticatie, Cashier voor online betalingen van abonnementen, enzovoort. Zelf dragen we ook ons steentje bij aan de Laravel community met onze eigen open source packages.
Technisch werkt Laravel met een Model-View-Controller ontwerppatroon (MVC). Dit splitst complexe toepassingen op in 3 eenheden. Model is het datamodel (bv uit een databank), View is de presentatie van de data (bv de gebruikersinterface), en Controller bevat de applicatielogica. Hierdoor kunnen we de business logica vertalen naar flexibelere, schaalbaardere software architectuur. Het framework biedt ook authenticatie en authorisatie, lokalisatie (vertalingen), templating, task management, caching, session management, enzovoort aan.
Omwille van die uitgebreide basis en de grote community, die support en veel extra functionaliteiten open source aanbiedt, werken we graag met Laravel om onze web applicaties te bouwen. Meer in het bijzonder voor de grotere, complexere en custom projecten waar er niet zo zeer een focus ligt op content pagina's maar eerder op business processen en custom integraties met externe systemen, bv CRMs of boekhoudsystemen.