Skip to content

mcosta21/LearnCertApi

Repository files navigation

Learn Certification API

.NET 6 WEB API

Checklist
  • Create .NET 6 project;
  • Add SQL Server Connection (temporary);
  • Implement a Repository Pattern with UnitOfWork;
  • Create functionality to use multiple files to implements a Dependency Injection of IServiceCollection;
  • Separate multiple projects inside the solution for Api, Domain, Infrastructure, and others;
  • Change Dockerfile to create a image with all projects of solution;
  • Remove SQL Server and Add MySQL (Amazon Aurora);
  • Add MySQL docker-compose;
  • Add migrations database;
  • Configure Unit Test suite;
  • Configure Integration Test suite;
  • Add feature to connect on test database and clear all data before run the tests;
  • Configure Autofixture;
  • Add Log tool;
  • Add Authentication;
  • Add FluentValidation;
  • Create React app with Vite;
  • Add React app docker-compose;
  • Implement CQRS pattern;

Build and run app using Docker

docker build -t learn-cert-api-image -f Dockerfile .

docker network create local

docker run -d -p 8080:5000 --name learn-cert-api-container -e LearnCert.SecretKey="123456" -e LearnCert.Host="127.0.0.1" --net=local learn-cert-api-image 

-v ./tmp/mysql/data:/var/lib/mysql docker run --name learn-cert-database -p 3306:3306 -e MYSQL_ROOT_PASSWORD=Root0++ -e MYSQL_USER=root --net=local -d mysql:8.0.22

API - http://localhost:8080/Book Swagger - http://localhost:8080/swagger/index.html

Use Docker Compose

#powershell
docker-compose rm -f -s | docker-compose build | docker-compose up -d

Solution Schema

CQRS Architecture Pattern

Beekeeper Studio

Download

About

Learn about certification with pratical questions

Resources

Stars

Watchers

Forks