Skip to content

duartemelo/MSAuth

Repository files navigation

MSAuth

👨‍💻 UNDER DEVELOPMENT

To understand key concepts of CLEAN architecture, Domain-Driven Design (DDD), Dependency Injection, Outbox patterns using Hangfire, and Microservices, I've developed MSAuth (Authentication Microservice). The goal is to create a service that can be easily consumed by other services.

This microservice enables the creation of apps, each with its unique app key, which allows them to manage user creation and authentication.

To-Do List

  • Base layers (CLEAN architecture, DDD)
  • Dependency injection
  • Unit Of Work
  • Notification Context
  • Notification Filter
  • Model validation errors
  • Model Error Context
  • Model Error Filter
  • Add FluentValidation to simplify model validation
  • AutoMapper
  • Email service using Papercut and FluentEmail
  • Outbox pattern using Hangfire
  • Implement all endpoints
  • JSON Web Tokens (JWT) generation
  • Refresh token
  • Docker containerization
  • Docker compose
  • API Gateway with YARP
  • Implement async communication using RabbitMQ
  • Implement Redis distributed cache
  • Create a Postman collection to share so people can test the project
  • Create a front-end to consume the back-end services

Run the project

👨‍💻 UNDER DEVELOPMENT

Open the project with Visual Studio, setup your connection strings at appsettigs.json, and run it using Docker :)
If you can't connect to your SQL Server database, you might need to do this: https://vivekcek.wordpress.com/2018/06/10/connecting-to-local-or-remote-sql-server-from-docker-container/

About

Web API - Authentication Microservice

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published