From d3152cf21b987d45db1960ae1562bf8e8b58c48d Mon Sep 17 00:00:00 2001 From: Gabriel Rodrigues Ricardo Date: Tue, 21 Jan 2025 20:17:26 -0300 Subject: [PATCH 1/2] Update README.md --- README.md | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index c206622..388afa6 100644 --- a/README.md +++ b/README.md @@ -5,6 +5,23 @@ É uma API Web desenvolvida em ASP.NET Core para gerenciar contatos com funcionalidades de cadastro, consulta, atualização e exclusão de contatos, utilizando a Clean Architecture e o Domain-Driven Design (DDD) proporcionando uma estrutura modular e fácil de manter. ### Principais funcionalidades -- **Cadastro de contatos**: permitir o cadastro de novos contatos, incluindo nome, telefone e e-mail. -- **Consulta de contatos**: implementar uma funcionalidade para consultar e visualizar os contatos cadastrados, os quais podem ser filtrados pelo DDD da região. +- **Cadastro de contatos**: permitir o cadastro de novos contatos com validações de dados, tais como: nome, telefone e e-mail. +- **Consulta de contatos**: consultar e visualizar os contatos cadastrados, os quais podem ser filtrados pelo DDD da região. - **Atualização e exclusão**: possibilitar a atualização e exclusão de contatos previamente cadastrados. +- **Validação de regras de negócio**: evitar inconsistências, como DDDs inválidos ou duplicidade de contatos. + +### Tecnologias e Ferramentas Utilizadas + +- **.NET 8**: Framework principal para desenvolvimento. +- **Entity Framework Core**: ORM para manipulação de dados. +- **Docker Compose**: Orquestração dos contêineres. +- **GitHub Actions**: Integração Contínua (CI) para automação de testes e build. +- **Prometheus e Grafana**: Monitoramento de desempenho e saúde da API. +- **TestContainer .NET**: Para testes de integração com um banco de dados contêinerizado. + +### Estrutura do Projeto +Este projeto segue os princípios da Clean Architecture, dividindo o código em camadas bem definidas: +- **Domain**: Contém as entidades e regras de negócio principais. +- **Application**: Contém os casos de uso (Use Cases) e os serviços de aplicação. +- **Infrastructure**: Implementação de serviços externos, como persistência de dados, integração com APIs, etc. +- **API**: Contém os controladores (Controllers) e configurações da API. From be0371074333846eac31bff6e57c36c75fee6cde Mon Sep 17 00:00:00 2001 From: Gabriel Rodrigues Ricardo Date: Tue, 21 Jan 2025 20:21:56 -0300 Subject: [PATCH 2/2] add wiki link --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index 388afa6..77ea2b2 100644 --- a/README.md +++ b/README.md @@ -25,3 +25,6 @@ Este projeto segue os princípios da Clean Architecture, dividindo o código em - **Application**: Contém os casos de uso (Use Cases) e os serviços de aplicação. - **Infrastructure**: Implementação de serviços externos, como persistência de dados, integração com APIs, etc. - **API**: Contém os controladores (Controllers) e configurações da API. + +*** +> Acesse a seção de [Wiki](https://github.com/gricar/ContactsManager-API/wiki) para mais detalhes técnicos da aplicação