Article mis à jour le 18 août 2018 | Publié le 18 août 2018
Nous avons remarqué que les frameworks sont vos sujets préférés ! C’est pourquoi nous vous proposons de parler cette semaine de Nest.js : un framework Node.js. Nous verrons ses caractéristiques techniques et ses avantages.x xxxxx
Quelles fonctionnalités propose ce framework ?
Ce qui fait avant tout la force principale de Nest, c’est qu’il est basé sur JavaScript, mais construit via TypeScript. Il apporte également tous les éléments des langages ES2015 ES2016 et ES2017. Le Framework combine des éléments de programmation orientée objet (POO), de programmation fonctionnelle (FP) et de programmation fonctionnelle réactive (FRP).
Nest.js utilise beaucoup de fonctionnalités de son concurrent Express, cependant, ses concepteurs l’ont démarqué en le rendant compatible avec un grand nombre de bibliothèques Node.Js comme Fastify.
Installation de Nest.Js
Comme pour la majorité des frameworks ou autres outils, quelques commandes dans votre terminal sont suffisantes :
Création et installation du projet via npm :
$ npm i -g @nestjs/cli
$ nest new project-name
Création et installation du projet via Github :
$ git clone https://github.com/nestjs/typescript-starter.git project
$ cd project
$ npm install
$ npm run start
Caractéristiques techniques
Voici une liste factuelle des éléments techniques du Framework Nest.JS
Authentification : pour cette partie, les concepteurs de Nest.Js ont choisi la bibliothèque Passeport (la plus populaire de Node.js). Elle est facile à intégrer et surtout très complet.
Base de données : la gestion de bdd est gérée par l’ORM (Object Relational Mapper) TypeORM. Il est développé en TypeScript, ce qui fait qu’il fonctionne très bien avec le Framework.
Téléchargement de fichiers : Pour gérer les uploads, Nest.Js utilise un middleware : il s’agit de Multer. Son avantage est d’être entièrement configurable et donc de répondre à toutes vos exigences.
Nest.Js vous permettra d’utiliser une large sélections d’API par le biais d’un module bien connu chez les développeurs :
Module @nestjs/graphql : un moyen simple de jongler avec GraphQL et Node.JS. Une fois le framework installé, il vous suffit d’ajouter tous les packages grâce à la requête ci-dessous :
$ npm i —save @nestjs/graphql apollo–server–express graphql–tools graphql
Pour les passerelles, Nest.Js utilise le module Websocket et plus particulièrement la bibliothèque Socket.io . Il permet une communication bidirectionnelle en temps réel entre clients et serveurs.
Nest.Js possède également d’autres fonctionnalités techniques, pour en savoir plus, n’hésitez pas à lire la documentation sur le site officiel.