8000 GitHub - mks786/EmpowerID: UpWork
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

mks786/EmpowerID

Repository files navigation

Welcome To EmpowerID

Welcome to EmpowerID, an experimental application that integrates several cutting-edge technologies and architectural patterns. Your interest in this project is appreciated! If you find value in it, please consider giving it a ⭐ to show your support, which in turn motivates continuous improvement.


src
├── Gateway
│  ├── EmpowerID.Core
│  └── EmpowerID.Core.Infrastructure
│
├── Gateway
│   └── EmpowerID.ApiGateway
│
├── Identity
│   └── EmpowerID.IdentityServer
│
├── Services
│   ├── EmpowerID.Posts
│   └── EmpowerID.UserManagement
│
└── docker-compose
  • Core
    Defines abstract building blocks utilized across all projects.

  • Core.Infrastructure
    Contains abstractions and infrastructure implementations for use by microservices and their dependencies.

  • Identity § Gateway
    Encompasses project implementations that intersect multiple microservices, such as IdentityServer and API Gateway .

  • Services
    Backend microservices are structured in a vertically sliced manner with API, Application, Domain, and Infrastructure layers.

      ├── EmpowerID.Posts
      │   ├── API
      │   ├── Application
      │   ├── Domain
      │   └── Infrastructure
    
    • API
      Provides a RESTful interface for communication between client and server.

    • Application
      Orchestrates interactions between the external world and the domain, executing application tasks through use cases by managing commands and queries.

    • Domain
      Implements domain logic through aggregates, commands, value objects, domain services, repository definitions, and domain events.

    • Infrastructure
      A supporting library for upper layers, handling infrastructural concerns such as data persistence via repository implementations, database mapping, and external integrations.


Technologies used

  • ASP.NET Core API and C# 12 for cross-platform backend with:
    • .NET 8
    • Ocelot 22.0.1
    • Marten 6.4.1
    • MSSQL 2019
    • Entity Framework Core 8.0.0
    • Postgres for Entity Framework Core 8.0.0
    • ASP.NET Core Identity 8.0.0
    • ASP.NET Core Authentication JwtBearer 8.0.0
    • Duende IdentityServer 6.3.8
    • MediatR 12.2.0
    • Polly 8.2.1
    • Fluent Assertions 6.12.0
    • XUnit 2.6.5
    • NSubstitute 5.1.0
    • Swagger 6.5.0
    • Confluent Kafka 2.3.0

    Running Instructions

    Running Microservices with Docker
    The project is designed to be easily run within Docker containers. Simply follow these steps:

    1. Ensure you have Docker installed on your system.
    2. Using a terminal, execute the following command:

    $ docker-compose up

    Alternatively, you can set the docker-compose.dcproj as the Startup project in Visual Studio if you prefer to run it while debugging.

About

UpWork

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0