Geschreven door Antony Cox.
Deze zomer mochten we aanwezig zijn op het We Are Developers congres in Berlijn, 2 dagen vol met talks over de nieuwste technologieΓ«n.
De, voor mij, meest interessante sessie ging over NestJS. Een TypeScript backend framework dat belooft om het beste van Express en Fastify te combineren in een gestructureerde backend-oplossing. Het klonk als muziek in de oren dus gingen we ermee aan de slag in onze Strava app waarmee we elk jaar elkaar het vuur aan de schenen leggen om de meeste beweegminuten te verzamelen en geld te verdienen voor een goed doel.
Wat is NestJS?
NestJS is een TypeScript backend framework gebaseerd op Express en Fastify. Het belooft structuur te brengen in het wilde westen van de TypeScript backends door een architectuur soortgelijk aan Angular te introduceren met modules om interne structuur van de applicatie op te bouwen, controllers om de endpoints te configureren en services voor de business logica.
Daarnaast zijn er een heleboel modules die je out-of-the-box kan gebruiken om dingen zoals dependency Injection, authenticatie, unit testing enzovoort te implementeren.
Onze ervaring
Om NestJS te gebruiken in onze Strava app zijn we gestart met een nieuwe backend op te zetten naast de bestaande Java backend. Via de CLI maak je gemakkelijk een nieuw project aan en de beloofde structuur werd meteen duidelijk. Als Angular developer voelde het als thuiskomen.
Al snel hadden we een werkende API opgezet met behulp van de verschillende beschikbare modules om authenticatie te configureren met behulp van JWT en TypeORM om onze Postgres databank te bereiken.
Wat ons vooral opviel was hoe eenvoudig de brug tussen front- en backend werd bij het gebruik van NestJS. Frontend developers met weinig of geen backend ervaring konden moeiteloos de switch maken.
Waarom moet jij NestJS overwegen voor je volgende project?
NestJS is meer dan een framework; het is een ecosysteem dat ontwikkelaars in staat stelt om krachtige en toekomstbestendige applicaties te bouwen. Het combineert de kracht en flexibiliteit van Node.js met de organisatie en structuur van frameworks zoals Angular. Hierdoor kun je eenvoudig schaalbare en onderhoudbare applicaties ontwikkelen.
Of je nu een startup bent die snel een MVP wil bouwen, of een groot bedrijf dat robuuste enterprise-oplossingen nodig heeft: NestJS is een zeer goede keuze voor moderne backend-ontwikkeling.