TL.ResilientCore.Template 1.3.0

There is a newer version of this package available.
See the version list below for details.
dotnet new install TL.ResilientCore.Template@1.3.0
                    
This package contains a .NET Template Package you can call from the shell/command line.

🛡️ TL.ResilientCore

Template .NET 9 corporativo para microsserviços de missão crítica com Clean Architecture, CQRS, Outbox/Inbox transacional e observabilidade nativa.


🏗️ Pilares de Engenharia

  • Clean Architecture & DDD: Camadas estritamente concêntricas com inversão de dependência (DIP).
  • CQRS com MediatR: Separação entre comandos de escrita e queries de leitura otimizadas.
  • FinOps Caching Híbrido: IMemoryCache (custo $0) para cenários locais/startups e Redis corporativo distribuído com TTL Jitter decorrelacionado e criptografia AES-GCM (256-bit).
  • Transactional Outbox com RabbitMQ: Índice filtrado de custo $O(1)$, garantia de entrega At-Least-Once, Dead Letter Queue (DLQ) e fallback determinístico in-process.
  • Resiliência HTTP: Polly v8 nativo via AddResilientHttpClient com Exponential Backoff, Jitter e Circuit Breaker.
  • Central Package Management (CPM): Governança unificada de dependências via Directory.Packages.props.

🐳 Infraestrutura Local (Docker Compose)

Para provisionar a infraestrutura necessária de desenvolvimento e testes:

docker-compose up -d

Serviços Provisionados:

  • PostgreSQL 16: localhost:5432 (TLResilientDb, usuário/senha: postgres/postgres)
  • Redis 7: localhost:6379 (Cache distribuído)
  • RabbitMQ 3: localhost:5672 (Broker AMQP) e http://localhost:15672 (Management Web UI — guest/guest)

🚀 Executando a Solução

  1. Restaurar e Compilar:

    dotnet restore TL.ResilientCore.sln
    dotnet build TL.ResilientCore.sln -c Release
    
  2. Executar Testes:

    dotnet test TL.ResilientCore.sln
    
  3. Subir a API:

    dotnet run --project src/Presentation/TL.ResilientCore.Api/TL.ResilientCore.Api.csproj
    

A documentação interativa da API e probes estarão acessíveis em:

  • Scalar UI: https://localhost:7001/scalar/v1
  • OpenAPI Json: https://localhost:7001/openapi/v1.json
  • Health Check Geral: GET /
  • Liveness Probe: GET /livez
  • Readiness Probe: GET /readyz

📖 Arquitetura e Decisões Técnicas


📜 Licença e Atribuição

Distribuído sob a licença MIT. Desenvolvido e mantido por Thaylon Lopes.
Ao utilizar este template ou seus derivados em projetos corporativos ou comerciais, a preservação dos avisos de direitos autorais originais é mandatória conforme os termos da licença.

  • net9.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.3.1 112 10/8/2026
1.3.0 96 10/7/2026
1.2.2 161 9/15/2026
1.2.1 179 8/28/2026
1.1.0 190 8/22/2026
1.0.1 186 8/21/2026
1.0.0 188 8/21/2026