Laravel is een modern php framework en wordt door freelance php ontwikkelaars ingezet om flexibele en robuuste sites of web applicaties te ontwikkelen.
Het Laravel framework is opgezet rond het principe van MVC. MVC staat voor model, view, controller.
Het voordeel van MVC is dat de code voor de presentatie (weergave) en de code voor het genereren van de inhoud gescheiden is. Dit maakt de code beter herbruikbaar en overzichtelijker. De controller draagt er zorg voor dat de data aan de juiste weergave wordt doorgegeven. De meeste PHP frameworks maken gebruik van een dergelijke scheiding. Een ander voordeel van de MVC scheiding is dat de front-end en de back-end ontwikkelaars elkaar minder in de weg zitten. De freelance front-end developer kan zich op de presentatie richten terwijl de back-end developer zich op het verwerken van data kan richten.
Laravel komt met haar eigen testomgeving gebaseerd op vagrant. De zogenaamde homestead machine stelt freelance php developers in staat lokaal in een virtuele linux omgeving de functionaliteit van de web applicatie te testen. Naast de virtuele omgeving is er ook nog een eenvoudige development server beschikbaar die niet in een virtuele machine draait.
Laravel heeft een snel templating systeem genaamd Blade. In blade is het mogelijk php code te gebruiken of informatie in te voegen via de blade syntaxis. Views kunnen eenvoudig componenten delen of van elkaar overerven, zo hoef je gemeenschappelijke elementen maar 1 keer te maken en dat is natuurlijk ook wel zo makkelijk bij het onderhouden van de code door de front-end developer.
Voor php back-end ontwikkelaars is het eenvoudig om databasemigraties te schrijven in Laravel. De database migraties helpen je je het database model vast te leggen en eenvoudig te testen. Je kunt bv. eenvoudig een rollback doen om opnieuw de structuur of enkele wijzigingen toe te passen op de database. Ook is het mogelijk middels seeds in je testomgeving snel testdata in te voegen om te zien hoe alles functioneert wanneer het gevuld is met bv gebruikers en content.