Apps bouwen (web en mobiel) is onze passie. Er bestaat niets waar wij zoveel energie van krijgen als het snel opleveren van fantastische features. Ons team heeft veel ervaring met Laravel tools en technieken die geschikt zijn voor dat doel. We richten ons vaak op het ontwikkelen van trajecten waarbij een MVP neergezet dient te worden; het zogeheten Minimum Viable Product. Binnen zulke trajecten is het belangrijk om binnen een korte tijd zoveel mogelijk waarde te leveren. Zodat het product zo snel mogelijk aansluit op een specifieke business case.
Op technisch niveau kunnen wij als ontwikkelaars hieraan bijdragen door bepaalde keuzes te maken die in het belang zijn van de businesscase van de opdrachtgever. In plaats van het kiezen voor maatwerk is het vaak veiliger om iets te kiezen wat we kant en klaar kunnen inzetten. Dit heeft te maken met de klassieke project management triangle (ook wel duivelsdriehoek genoemd) die refereert aan de manier waarop de aspecten scope, tijd en budget zich binnen een project tot elkaar verhouden.
In deze post geef ik een kijkje in de gereedschapskist die wij als Team Artisans gebruiken. We zoomen in op de Laravel tools die wij inzetten om zo snel mogelijk een nieuwe business op te starten. Uiteraard verversen we deze gereedschapskist geregeld door het toevoegen van nieuwe diensten en technieken. Dit is een doorlopend proces. Welk project we ook aanpakken: We kijken natuurlijk altijd welke tools het er beste bij passen.
De 7 Laravel Tools
1. Jetstream
Jetstream is een handige tool waarmee we een aantal standaard componenten kunnen klaarzetten voor een applicatie. Wanneer we Jetstream gebruiken krijgen we de volgende onderdelen out-of-the-box:
- Inloggen
- Wachtwoord vergeten
- Tweestapsverificatie
- Een optie om teams te beheren
- Gebruikersbeheer
- Een standaard applicatie layout
2. Nova
Nova is een dunne schil om de database van de applicatie en is vooral bedoeld voor beheerders van de applicatie. Dit biedt een aantal standaard componenten om in een korte tijd formulieren te genereren en om de data inzichtelijk en beheersbaar te maken.
3. Horizon
Laravel Horizon is een queue manager die je volledige controle geeft over de queue. Horizon biedt verschillende middelen om te configureren hoe de taken worden verwerkt. Daarnaast schaalt Horizon mee met je applicatie. Het is ontwikkelt voor veel werk en meerdere servers. Tot slot kan je met Horizon analyses genereren en verschillende acties uitvoeren voor taken. Dit allemaal komt samen in een modern uitziend dashboard.
4. Envoyer
Envoyer is een tool die deployments kan verzorgen. Binnen envoyer beschrijven wij hoe de applicatie moet worden gedeployed waarna wij de applicatie geautomatiseerd kunnen deployen. Verder biedt envoyer de mogelijkheid om notificaties in te stellen waardoor wij kunnen inzien wanneer de applicatie goed wordt gedeployed.
5. Forge
Met laravel forge kunnen we met één druk op de knop een nieuwe server klaarzetten. Vervolgens kunnen we de applicatie met envoyer deployen naar de server die is klaargezet.
Na het opzetten van de server wordt de server gedeeltelijk beheerd door Forge. Zo worden de security updates gedaan en is het mogelijk nieuwe services toe te voegen aan een bestaande server. Ook is het mogelijk om backups te automatiseren en SSL te configureren.
6. Vapor
Laravel Vapor is een serverless implementatie platform voor Laravel. Het draait volledig op de services van Amazon AWS. Laravel Vapor biedt de mogelijkheid om je applicatie onbeperkt te laten schalen zonder server onderhoud. Daarnaast maakt Vapor het mogelijk om automatisch te schalen. Zonder development capaciteit in te leveren voor de ontwikkeling van de hosting omgeving.
Vapor geeft je een mooi dashboard waar alles geconfigureerd kan worden. Hier zijn ook server statistieken te vinden. Meer lezen over Vapor? Jeroen Groenendijk schreef er dit blog over.
7. Passport
Wanneer we apps bouwen hebben we vaak een vorm van authenticatie nodig om in te loggen op de applicatie die we bouwen. Om ervoor te zorgen dat we dit op een veilige manier doen maken we gebruik van technisch bewezen standaarden. Eén van die standaarden is oAuth2.
oAuth2 is goed gedocumenteerd. En kunnen we zelf integreren maar met behulp van Passport weten we zeker dat het goed, veilig maar ook snel gebeurd.
“We zoeken altijd naar de juiste oplossing voor jouw businesscase, met oog voor het beschikbare budget. Lees daarom ook ons blog 5 x besparen dankzij Laravel.”
Daan Houweling
Zijn Laravel tools heilig?
Zijn er ook nadelen van het inzetten van deze kant en klare Laravel tools? Ja, die zijn er zeker! Een aantal van bovenstaande tooling is erg breed inzetbaar en misschien niet specifiek genoeg voor een bepaalde use-case. In dat geval kan het voorkomen dat we in een later stadium een bepaald onderdeel zullen moeten vervangen of uitbreiden. Daarom is het ook altijd zo belangrijk om een goede afweging te maken gedurende het project.
Lees meer in onze whitepaper App Developement
Een mobiele app is dé manier om altijd in contact met je klanten te zijn. Maar het ontwikkelen van een mobiele app kent ook een aantal uitdagingen. We schreven daarom een whitepaper over app development op de Enrise manier. In dit whitepaper vind je alles over techniek, veiligheid en meer.