Créer des APIs en Javascript avec Nest.js

En 2 jours, vous apprendrez à maîtriser le plus célèbre framework Node.js pour faire des APIs. Au travers d’un cas concret, vous mettrez en œuvre des Modules, la Configuration, la Sécurité, utiliserez des Décorateurs, un ORM Javascript, et bien entendu les Tests.

Présentiel ou Distanciel
2 jours
1 600 € H.T
Javascript, typescript, node.js
Ratio théorie / pratique : Ratio théorie / pratique : 20% / 80%
(37)
Dernière mise à jour : 04/2024

Description

L'écosystème JavaScript a considérablement évolué au cours de la dernière décennie. Si JavaScript est principalement connu pour le développement côté client, son utilisation pour le développement côté serveur est également devenue un choix viable, offrant plusieurs avantages :

  • Flexibilité : La langue est déjà connue des développeurs Front-end.
  • Facilité d'utilisation : Node.js et Express a longtemps été la combinaison standard pour le développement de telles applications.

Cependant, Node.js n’a pas été conçu pour répondre spécifiquement aux enjeux d’une application web, et n’est pas optimisé pour faciliter le développement d’applications plus complexes (pas d’injection de dépendances, pas de gestion automatisée de la configuration et des environnements, pas de gestion centralisée du logging, pas de gestion centralisée des exceptions, pas d’approche plugin autre qu’avec les middlewares express, support limité de modules externes, etc…).

C'est là que Nest.js entre en jeu. En seulement quelques années, Nest.js est devenu le framework le plus adopté de l’écosystème Node.js. Aujourd’hui presque un standard, il propose un ensemble d'outils orientés opinion pour créer des applications hautement scalables, faiblement couplées et facilement maintenables, tout en permettant aux développeurs de l'étendre avec des modules tiers. Cette formation est conçue pour être une parfaite introduction à Nest.js et son écosystème. La découverte du framework se fera au travers de la création d’une API complète et production-ready

Icône Objectifs
Objectifs

Maîtriser le framework Nest.js pour la création d’une API. Savoir développer des modules en Nest.js. Apprendre à manipuler un ORM Javascript (MikroORM). Protéger une API avec passport.js et les avantages des décorateurs. Ecrire des tests avec Jest et supertest. Découvrir les considérations de production.

Icône Contenu
Contenu

Deux Keynotes, de nombreuses mises en situation pour découvrir les ressources sur un cas-réel, et des bonus avancés pour aller plus loin.

Icône Public
Public

Développeurs.

Icône Financement
Financement

Nous sommes certifiés Qualiopi et vous pouvez faire prendre en charge une partie de cette formation selon votre situation.

Icône Prérequis
Prérequis

Les participants doivent maîtriser le Javascript, Typescript et déjà avoir manipulé Node.js.

Icône Ressources pédagogiques
Ressources pédagogiques

Les contenus pédagogiques sont dispensés sur deux supports : les slides (un deck par jour et les deux keynotes), et le guide de formation.

Programme

Jour 1
Matin9h30-12h30

Keynote : L’écosystème Node.js
Setup de l'environnement, configurer son IDE pour coder sur un tel projet
Démarrer un projet de zéro en Nest.js avec le CLI
Comprendre à quoi servent les modules en Nest.js
Créer un module au sein de votre application

Après-midi14h-17h30

Mettre en place toutes les endpoints pour créer une application de messaging (par email)

Mettre en place une librairie pour créer vos entités du domaine métier

Mettre en place un service pour gérer vos emails et vos templates

Utiliser une base de données postgresql via Docker

Initialiser le schéma avec Flyway, un outil de migration de base de données

Implémenter un repository en se basant sur MikroORM, un ORM disponible en JS pour interfacer votre base de données et votre monde relationnel

Jour 2
Matin9h30-12h30

Mettre en place des variables d’environnement pour sécuriser et variabiliser notre application
Créer un module et un service pour gérer la configuration de l’application
Implémenter vos tests pour que votre application soit maintenable
Mettre en place une tâche asynchrone pour traiter l’envoi d’email
Utiliser un scheduler au sein de l’application pour l’envoi d’email
Créer un module au sein de votre application

Après-midi14h-17h30

Mettre en place de la sécurité dans notre application

Mettre en place la librairie passport.js pour gérer l’authentification avec username/password et les guards

Utiliser une stratégie basé sur un JWT

Implémenter l’autorisation avec des permissions guards
Keynote : La suite avec Nest.js

Prochaine session

La date ne vous convient pas ? Pas de soucis !

Contactez l'équipe Takima pour être tenu au courant des prochaines dates de sessions proposées pour cette formation.

Cela pourrait vous plaire également...

Les participants en parlent mieux que nous !