Skip to content

Test de création d'une API CRUD REST en utilisant le framework backend NESTJS avec une authentification JWT, la mise en place de tests E2E et l'utilisation d'une base de données relationnelle (techno utilisées : Docker, Postgres, Passport.js, Prisma, Pactum et Dotenv)

Notifications You must be signed in to change notification settings

tony-dugue/nestjs-api-bookmarks

Repository files navigation

Présentation du projet


Test de création d'une API CRUD REST en utilisant le framework backend NESTJS avec une authentification JWT, la mise en place de tests E2E et l'utilisation d'une base de données relationnelle (techno utilisées : Docker, Postgres, Passport.js, Prisma, Pactum et Dotenv).

Ce projet a été initialisé avec le starter de la CLI Nest.

Nest Logo

A progressive Node.js framework for building efficient and scalable server-side applications.

NPM Version Package License NPM Downloads CircleCI Coverage Discord Backers on Open Collective Sponsors on Open Collective Support us

🚀 Installation du projet


  • récupération du projet sur Github par HTTPS :
$ https://github.com/tony-dugue/nestjs-api-bookmarks.git
  • installer les packages :
$ yarn install

Démarrer l'application


(1) démarrer l'application docker

(2) Démarrer le serveur de développement (à la racine du projet) :

$ yarn start #ou $ npm run start

Ou avec le watch mode

$ yarn start:dev #ou $ npm run start:dev

(3) dans un 2nd terminal, démarrer la visualisation de la base de données avec prisma :

$ npx prisma studio

Autres commandes

Voir les containers docker en cours de fonctionnement (si la bdd est bien démarrée) :

$ docker ps

pour redémarrer la base de données (script auto pour tuer la bdd, la redémarrer et appliquer toutes les migrations) :

# après avoir démarrer l'application docker
$ yarn db:dev:restart

Préparer l'application pour la production :

$ yarn start:prod #ou $ npm run start:prod

Générer une migration manuellement :

$ npx prisma migrate dev

Test


# e2e tests
$ yarn test:e2e #ou $ npm run test:e2e

visualisation de la base de données de test avec prisma :

$ npx dotenv -e .env.test -- prisma studio

Ressources utilisées dans le projet


docker
Base de données : postgres
Authentification middleware pour Nodejs : passport.js
Typescript ORM : prisma
Outil d'automatisation des tests d'API REST en E2E : pactum
Variables d'environnement : dotenv

Nestjs Support


Nest is an MIT licensed open source project. It can grow thanks to the sponsors and support by the amazing backers. If you'd like to join them, please read more here.

Stay in touch

About

Test de création d'une API CRUD REST en utilisant le framework backend NESTJS avec une authentification JWT, la mise en place de tests E2E et l'utilisation d'une base de données relationnelle (techno utilisées : Docker, Postgres, Passport.js, Prisma, Pactum et Dotenv)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published