Projeto
Bilheteria Digital
Plataforma de venda de ingressos online, desenvolvida do zero com Go, Next.js e infraestrutura multi-cloud (OCI + AWS). Suporta criação e gestão de eventos, compra de ingressos com pagamento via Pix (Mercado Pago), carteira digital com saldo e transferências, painel de fornecedores e administração.
Stack
Diagrama de infraestrutura
Multi-cloud: cluster Kubernetes ARM64 na Oracle Cloud (OKE), container registry e DNS na AWS. CI/CD via GitHub Actions com OIDC sem credenciais persistentes.
Arquitetura do sistema
Fluxo de dados entre o browser, o frontend Next.js e a API Go. A API segue Domain-Driven Design com 8 domínios, autenticação JWT + RBAC e quatro perfis de acesso.
API — Domínios
Modelo de domínios
- Registro e login (email/senha)
- Login Google OAuth2
- JWT Bearer tokens
- Middleware RBAC
- Perfil e senha (self-service)
- Admin: listar, atribuir roles
- Ativar/desativar contas
- Criar e editar eventos
- Publicar / cancelar
- Listagem pública
- Painel fornecedor
- Tipos de ingresso por evento
- Controle de assentos
- Disponibilidade em tempo real
- Criação de pedido
- Cancelamento
- Histórico do cliente
- Visão admin de todos pedidos
- Pix via Mercado Pago
- Webhook de confirmação
- Status de pagamento
- Verificação de assinatura
- Carteira digital por usuário
- Depósito e transferência
- Histórico de transações
- Reconciliação automática (10min)
- Catálogo de mercadorias
- Gestão por fornecedor
- Listagem pública (/merch)
CI/CD
Pipeline de entrega
GitHub Actions com OIDC — nenhuma credencial AWS de longa duração armazenada. Build multiplataforma ARM64 via QEMU + Docker Buildx, deploy contínuo com rollout no cluster OKE.