This practical project involves the creation of a Restful API using Node.js, NestJS, and TypeScript, oriented towards automated testing (unit, integration, and end-to-end tests), applying concepts of Domain Driven Design (DDD), Clean Architecture, Design Patterns, and SOLID principles.
The project consists of a user module with: entity, data validation, repositories, use cases, CRUD functionality, pagination of data returned in lists, JWT authentication, and automated tests within an architecture based on DDD and Clean Architecture concepts.
Clone the repository into your development environment.
git clone https://github.com/devDudu-21/nestAPI-clean-arch.git
Install the dependencies
npm install
with env development
# prisma generate
$ npm run generate:prisma
# dev mode
$ npm run start:dev
with production mode
$ npm run build
# production mode
$ npm run start:prod
# unit tests
$ npm run test
# integration tests
$ npm run test:int
# e2e tests
$ npm run test:e2e
# test coverage
$ npm run test:cov
This project was developed from the advanced Node.js course of Aluízio Alves, with the support of reading the book "Clean Architecture: the Craftsman's Guide to Software Structure and Design (Robert C. Martin)".