Exemplo de API REST para gerenciamento de álbuns implementada com Clean Architecture.
- Go 1.24.4 + Gin (HTTP framework)
- PostgreSQL 16 + GORM (ORM)
- JWT (autenticação)
- Swagger (documentação)
- Wire (injeção de dependências)
- Docker + Docker Compose
├── controllers/ # Handlers HTTP
├── usecases/ # Lógica de negócio
├── domain/ # Entidades, DTOs, interfaces
├── infra/ # Implementações (DB, security, config)
└── docs/ # Swagger docs (auto-gerado)
docker-compose up -dmake dev # Desenvolvimento
make dev-watch # Com hot reload (requer air)
make test # TestesSwagger disponível em: http://localhost:8080/swagger/index.html
make swag # Gerar docs Swagger
make wire # Gerar DI container
make tidy # Limpar dependências
make build # Compilar binário