Formation NestJS
Cette formation NestJS vous permet d’acquérir les bases et les bonnes pratiques du développement avec NestJS. Vous apprendrez à structurer une application, créer des contrôleurs, services et modules, et gérer les dépendances efficacement. La formation couvre aussi la gestion des bases de données avec TypeORM, Mongoose et Prisma, ainsi que la sécurité via Passport.js, JWT, guards et intercepteurs. Vous découvrirez comment implémenter l’authentification, l’autorisation et protéger votre application contre les vulnérabilités courantes. Enfin, vous explorerez des outils essentiels comme Swagger pour la documentation, Winston pour le logging, la gestion des tâches avec Bull et RabbitMQ, ainsi que l’intégration de GraphQL. Cette formation NestJS est idéale pour développer des applications performantes et sécurisées !
Objectifs pédagogiques
- Maitriser les fondamentaux de NestJS : contrôleurs, modules, services
- Implémenter une bases de données via un ORM (TypeORM, Mongoose, Prisma)
- Connaitre les concepts avancés : guards, intercepteurs, pipes...
Pré-requis
- Maitrise du langage JavaScript et idéalement TypeScript
- Avoir des bases de Node.js / Express
Public
- Développeurs
- Chefs de projets
Programme
Jour 1
Les Fondamentaux de NestJS
- Introduction à NestJS : Philosophie, avantages, architecture (modules, controllers, services).
- Installation et configuration d'un projet NestJS : Utilisation du Nest CLI, configuration du package.json.
- Structure d'une application NestJS : Analyse détaillée de l'exemple fourni.
- Développement d'un premier contrôleur et d'un premier service : Requêtes HTTP, réponses, injection de dépendances.
Jour 2
Gestion des Données
- TypeORM : Configuration, entités, repositories, requêtes.
- Mongoose : Décorateurs, Model, requêtes.
- Prisma : Modélisation, migration, Prisma Client
- Validation de données : Class-validator, Joi.
Authentification et Autorisation
- Passport.js : Stratégies d'authentification (local, JWT).
- Gestion des rôles et des permissions
- Guards, Intercepteurs et Pipes
- Sécurité des applications NestJS : Best practices, vulnérabilités courantes.
Jour 3
Outils et Techniques
- Swagger : Documentation interactive de l'API.
- Logging : Winston, NestWinston.
- Configuration : Gestion des variables d'environnement, configuration dynamique.
- Task Scheduling : Planification de tâches.
- Gestion des files d'attente : Bull, RabbitMQ.
- Transfert de fichiers : Multer, NestSFTP.
- GraphQL : Introduction, mise en œuvre avec NestJS.
Méthodes mobilisées
- Un formateur validé par nos équipes techniques et pédagogiques sera présent pendant toute la durée de la formation
- Pour les formations en présentiel, une salle de formation sera mise à disposition et équipée d'ordinateurs portables, d'un accès Wi-Fi, d'un projecteur et d'un tableau blanc. En distanciel la session sera suivie sur Zoom ou autre outil de visioconférence sur demande (Teams, Webex, Google Meet...).
- Un support de cours en version numérique sera remis à chaque participant
Modalités d’évaluation
- Questions orales ou écrites (QCM)
- Exercices pratiques
- Auto-positionnement en amont et aval de la formation