https://github.com/daniloopinheiro/doparchitecton
é uma coleção prática de arquiteturas backend, do monolito ao event-driven, criada para aprendizado, demonstração e evolução técnica de projetos reais. Modular, escalável e ideal para estudos, PoCs e boas práticas.
https://github.com/daniloopinheiro/doparchitecton
architecture architecture-api cqrs dotnet event-driven-architecture hexagonal-architecture layered-architecture microservices monolith orchestrator-core serverless
Last synced: 7 months ago
JSON representation
é uma coleção prática de arquiteturas backend, do monolito ao event-driven, criada para aprendizado, demonstração e evolução técnica de projetos reais. Modular, escalável e ideal para estudos, PoCs e boas práticas.
- Host: GitHub
- URL: https://github.com/daniloopinheiro/doparchitecton
- Owner: daniloopinheiro
- License: other
- Created: 2025-06-23T19:50:51.000Z (7 months ago)
- Default Branch: develop
- Last Pushed: 2025-06-23T20:03:29.000Z (7 months ago)
- Last Synced: 2025-06-23T21:20:43.740Z (7 months ago)
- Topics: architecture, architecture-api, cqrs, dotnet, event-driven-architecture, hexagonal-architecture, layered-architecture, microservices, monolith, orchestrator-core, serverless
- Homepage:
- Size: 15.6 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
# 🏛️ dopArchitecton
**Coleção prática de arquiteturas backend** com diferentes níveis de complexidade, projetadas para demonstrar padrões reais utilizados em aplicações corporativas modernas.
O `dopArchitecton` é uma iniciativa educacional e técnica para centralizar **modelos de referência arquitetural**, desde o **monolito modular** até arquiteturas **baseadas em eventos**, **microserviços distribuídos**, **serverless** e muito mais.
---
## 📚 Índice
1. [Objetivo](#objetivo)
2. [Arquiteturas Disponíveis](#arquiteturas-disponíveis)
3. [Instalação](#instalação)
4. [Como Usar](#como-usar)
5. [Organização de Diretórios](#organização-de-diretórios)
6. [Contribuições](#contribuições)
7. [Licença](#licença)
8. [Contato](#contato)
---
## 🎯 Objetivo
Este repositório foi criado para profissionais, estudantes e equipes que desejam:
- Entender e comparar **diferentes estilos arquiteturais**
- Aplicar boas práticas como **DDD**, **Clean Architecture**, **Event-Driven Design**
- Usar tecnologias como **mensageria, observabilidade, CI/CD**
- Adotar uma abordagem evolutiva de arquitetura (Monolito → Microsserviços → Event-Driven)
Cada projeto é independente e documentado individualmente, com foco em **clareza, escalabilidade e modularidade**.
---
## 🧱 Arquiteturas Disponíveis
| Projeto | Tipo de Arquitetura | Descrição |
|----------------------------------|----------------------------------|-----------|
| `dopArchitecton.Monolithic` | Monolito Modular | Estrutura simples, modular, baseada em camadas |
| `dopArchitecton.Layered` | Arquitetura em Camadas | Separação tradicional em UI, Application, Domain, Infra |
| `dopArchitecton.Hexagonal` | Arquitetura Hexagonal (Ports & Adapters) | Alta desacoplagem entre núcleo e infraestrutura |
| `dopArchitecton.CQRS` | CQRS + Event Sourcing | Separação de leitura/escrita + persistência de eventos |
| `dopArchitecton.Microservices` | Microserviços distribuídos | Serviços independentes com mensageria assíncrona |
| `dopArchitecton.EventDriven` | Baseada em Eventos | Comunicação reativa e desacoplada via EventBus |
| `dopArchitecton.Serverless` | Functions & Event Grid | Aplicações elásticas e desacopladas em nuvem |
| `dopArchitecton.Orchestrated` | Orquestração com Saga / Workflow | Coordenação entre múltiplos serviços/domínios |
---
## 🚀 Instalação
### Pré-requisitos
* [.NET 7 SDK](https://dotnet.microsoft.com/en-us/download)
* [Git](https://git-scm.com)
* [Docker](https://www.docker.com) & [Docker Compose](https://docs.docker.com/compose/)
* **Opcional**: Azure CLI, AWS CLI (para arquiteturas cloud-native)
### Clonando o repositório
```bash
git clone https://github.com/daniloopinheiro/dopArchitecton.git
cd dopArchitecton
````
---
## 🧪 Como Usar
### Executar arquitetura monolítica:
```bash
cd dopArchitecton.Monolithic
dotnet build
dotnet run
```
A aplicação estará disponível em: `https://localhost:5001`
Swagger (se habilitado): `https://localhost:5001/swagger`
### Rodar testes
```bash
dotnet test
```
---
## 🧭 Organização de Diretórios
```bash
dopArchitecton/
│
├── dopArchitecton.Monolithic/ # Monolito modular com separação em camadas
├── dopArchitecton.Layered/ # Arquitetura clássica em camadas
├── dopArchitecton.Hexagonal/ # Ports & Adapters (adaptadores de entrada/saída)
├── dopArchitecton.CQRS/ # Separação entre comandos e consultas
├── dopArchitecton.Microservices/ # Microserviços independentes com event broker
├── dopArchitecton.EventDriven/ # Baseada em eventos com EventBus
├── dopArchitecton.Serverless/ # Functions e eventos cloud (Azure, AWS)
├── dopArchitecton.Orchestrated/ # Orquestração e coordenação de fluxos
│
├── docker-compose.yml # Infraestrutura compartilhada (Postgres, Kafka etc)
├── LICENSE
└── README.md
```
---
## 🤝 Contribuições
Você é bem-vindo para:
* Sugerir novas arquiteturas
* Melhorar a implementação atual
* Corrigir erros
* Adicionar testes e documentações
### Para contribuir:
1. Fork este repositório
2. Crie uma branch: `git checkout -b feature/nova-arquitetura`
3. Faça o commit: `git commit -m 'feat: nova arquitetura'`
4. Push: `git push origin feature/nova-arquitetura`
5. Abra um Pull Request 🚀
---
## 📄 Licença
Este projeto está sob a [Licença MIT](LICENSE).
---
## 👋 Contato
Se tiver dúvidas, sugestões ou quiser colaborar:
* **Pessoal**: [daniloopro@gmail.com](mailto:daniloopro@gmail.com)
* **Empresarial**: [devsfree@devsfree.com.br](mailto:devsfree@devsfree.com.br)
* **Consultoria**: [contato@dopme.io](mailto:contato@dopme.io)
* **LinkedIn**: [Danilo O. Pinheiro](https://www.linkedin.com/in/daniloopinheiro)
---