Nos technologies
A Propos
> Nos technologies
NestJS
Nest (NestJS) est un framework permettant de créer des applications Node.js efficaces et évolutives côté serveur. Il utilise le JavaScript progressif, est construit avec et supporte entièrement TypeScript (tout en permettant aux développeurs de coder en JavaScript pur) et combine des éléments de POO (programmation orientée objet), de PF (programmation fonctionnelle) et de PRF (programmation fonctionnelle réactive). Sous le capot, Nest utilise des frameworks de serveur HTTP robustes comme Express mais fournit un niveau d’abstraction supérieur, tout en exposant également leurs API directement aux développeurs. Cela donne aux développeurs la liberté d’utiliser la myriade de modules tiers qui sont disponibles pour la plate-forme sous-jacente. Nest fournit une architecture d’application prête à l’emploi qui permet aux développeurs et aux équipes de créer des applications hautement testables, évolutives, faiblement couplées et facilement maintenables. L’architecture est fortement inspirée d’Angular.
PostGreSQL
PostgreSQL est un système de gestion de bases de données relationnel robuste et puissant, aux fonctionnalités riches et avancées, capable de manipuler en toute fiabilité de gros volumes de données, même dans des situations critiques.
Prisma
Prisma est un ORM open source de nouvelle génération qui fonctionne en symbiose avec NestJS. Il se compose des éléments suivants :
Prisma Client : Constructeur de requêtes auto-généré et sécurisé pour Node.js et TypeScript.
Prisma Migrate : Outil de migration pour faire évoluer facilement le schéma de votre base de données du prototypage à la production.
Docker
La plateforme Docker présente de nombreux avantages. Elle permet de composer, de créer, de déployer et d’échelonner rapidement des containers sur les hôtes Docker. Elle offre aussi un haut degré de portabilité, ce qui permet aux utilisateurs de s’enregistrer et de partager des containers sur une large variété d’hôtes au sein d’environnements publics et privés. Par rapport aux machines virtuelles, Docker présente également plusieurs avantages. Elle permet de développer des applications de façon plus efficiente, en utilisant moins de ressources, et de déployer ces applications plus rapidement.
Sécurité
Afin de sécuriser nos APIs, nous utilisons entre autre les best practices suivantes :
- Empêcher les attaques par force brute contre les autorisations
- Eviter les versions dépréciées ou vulnérables d'Express
- Utiliser le TLS
- Utiliser Helmet pour l’utilisation des headers de sécurité
- Désactiver le header X-Powered-By
- Activer les headers de protection comme :
- X-Frame-Options
- Referrer-Policy
- Strict-Transport-Security
- Utilisation d’outils comme la CLI gratuite de Snyk pour vérifier les vulnérabilités dans les dépendances.
- Configuration des linters de sécurité (Snyk) dans le processus CI