Skip to content

Repository files navigation

.NET

scalable-template

.Net 7 Web Api scalable template for big projects.

How to use

  • Install docker
  • Execute docker-compose
  • Enjoy!

Concepts applied to the project (Architecture, patterns...)

  • SOLID
  • Clean Architecture
  • Hexagonal Arquitecture (Ports & Adapters)
  • VSA (Vertical Slice Architecture)
  • DDD (Domain Driven Design)
  • Domain Events
  • Integration Events
  • Outbox Pattern (using database, not the feature included in Masstransit)
  • CQRS (Command Query Responsibility Segregation)
  • Mediator
  • Unit of Work
  • Repositories
  • Postgres SQL (easy to change to another provider)
  • Result Control
  • Rest
  • Restful Responses
  • Docker & Docker Compose
  • .Net 7
  • Entity Framework Core
  • Serilog
  • Simple Create example
  • Get all Paginated example
  • Unit Tests
  • Integration Test
  • CI (github actions workflow)
    • Build
    • Unit test
    • Integration Test

Some personal thoughts

As a big fan of YAGNI (You aren't gonna need it) I have opposed feelings about this template.

I know that some projects won't need some parts (yes Integration events I'm looking at you), but, this is a showcase project, so... let me be.

On the other hand, I believe that is really simple to get rid off any part withouy a descomunal effort and in case you really need it, is big work that you get for free, so, you are welcome?

Is not perfect, I know it, and feedback is welcome!

My intention is to maintain this project updated. Also I will try to improve, refactor and apply new concepts continuosly. Pull request, feedback and questions are widely open, so don't hesitate.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages