Files
aggios.app/1. docs/old/plano.md
2025-12-08 21:47:38 -03:00

5.9 KiB

📋 PLANO DE TAREFAS ATUALIZADO - AGGIOS

Backend Go + Stack Completo
Status: Infraestrutura pronta (Docker 5/5 serviços)
Versão: 2.0
Data: 06/12/2025


📊 Visão Geral

FASE 1: Completar Backend Go (1-2 semanas)
  └─ Autenticação + Handlers + Banco de Dados

FASE 2: Conectar Frontends (1 semana)
  └─ Dashboard + Landing conectadas ao backend

FASE 3: Features Core (2 semanas)
  └─ Cadastro multi-step + CRM básico

FASE 4: Deploy + Testes (1 semana)
  └─ CI/CD + Testes + Deploy em produção

🟢 STATUS ATUAL

Infraestrutura Pronta:

  • Backend Go rodando no Docker
  • PostgreSQL 16 com migrations
  • Redis 7 para cache
  • MinIO para S3-compatible storage
  • Traefik v2.10 para multi-tenant
  • Health checks respondendo

🔴 FASE 1: COMPLETAR BACKEND GO (PRÓXIMOS 7-10 DIAS)

Objetivo: Backend 100% funcional com autenticação e handlers reais
Estimativa: 1-2 semanas
Dependências: Infraestrutura ✓

1.1 Autenticação & Security

  • Implementar handler /api/auth/register (criar usuário)
  • Implementar handler /api/auth/login (gerar JWT)
  • Implementar handler /api/auth/refresh (renovar token)
  • Implementar handler /api/auth/logout (invalida refresh token)
  • Implementar middleware JWT (validação de token)
  • Implementar middleware CORS (origins whitelisted)
  • Implementar rate limiting (Redis)
  • Hash de senha com Argon2

1.2 Endpoints Core

  • GET /api/me - Dados do usuário autenticado
  • GET /api/health - Status de todos os serviços
  • POST /api/tenants - Criar novo tenant/agência
  • GET /api/tenants/:id - Buscar tenant específico

1.3 Camada de Dados

  • Completar modelos: User, Tenant, RefreshToken
  • Implementar repository pattern (database queries)
  • Implementar service layer (lógica de negócio)
  • Testes unitários dos handlers

Go Check: Endpoints autenticados funcionam, JWT é validado, banco responde


🟠 FASE 2: CONECTAR FRONTENDS (7-10 DIAS)

Objetivo: Dashboard e landing conectadas ao backend
Estimativa: 1 semana
Dependências: Fase 1 ✓

2.1 Dashboard (Next.js)

  • Implementar login (chamar /api/auth/login)
  • Armazenar JWT em cookies/localStorage
  • Middleware de autenticação (redirecionar para login)
  • Página de dashboard com dados do usuário (/api/me)
  • Integrar com Traefik (subdomain routing)

2.2 Landing Institucional

  • Conectar botão "Começar" ao formulário de registro
  • Integrar /api/auth/register
  • Validações de frontend
  • Feedback visual (loading, errors, success)

Go Check: Login funciona, dashboard mostra dados do usuário logado


🟡 FASE 3: FEATURES CORE (10-14 DIAS)

Objetivo: Cadastro multi-step e CRM básico
Estimativa: 2 semanas
Dependências: Fase 2 ✓

3.1 Cadastro Multi-Step (Backend)

  • Step 1: Dados Pessoais (nome, email, telefone)
  • Step 2: Dados Empresa (nome, CNPJ, ramo)
  • Step 3: Localização (CEP, endereço, cidade - integrar ViaCEP)
  • Step 4: Logo (upload para MinIO)
  • Step 5: Subdomain (agencia-nome.aggios.app)
  • Endpoint POST /api/register/complete (transação final)

3.2 Cadastro Multi-Step (Frontend)

  • Formulário 5 steps no dashboard
  • Persistência entre steps (localStorage)
  • Validação por step
  • Upload de logo
  • Confirmação final

3.3 CRM Básico (Backend)

  • Endpoints CRUD para clientes (Create, Read, Update, Delete)
  • Paginação e filtros
  • RLS (Row-Level Security) - clientes isolados por tenant
  • Logs de auditoria

3.4 CRM Básico (Frontend)

  • Dashboard com gráficos (clientes total, conversão, etc)
  • Listagem de clientes
  • Página de cliente individual
  • Criar/editar cliente

Go Check: Cadastro funciona 100%, agência criada com sucesso, CRM funciona


🟢 FASE 4: DEPLOY & TESTES (7 DIAS)

Objetivo: Tudo em produção e testado
Estimativa: 1 semana
Dependências: Fase 3 ✓

4.1 Testes

  • Testes unitários backend (auth, handlers)
  • Testes de integração (banco + API)
  • Testes E2E (fluxo cadastro completo)
  • Coverage mínimo 80%

4.2 CI/CD

  • GitHub Actions (test na branch)
  • Deploy automático (main → produção)
  • Lint (golangci-lint)
  • Security scan

4.3 Deploy Produção

  • Configurar Let's Encrypt (HTTPS)
  • Setup banco de dados remoto
  • Setup Redis remoto
  • Setup MinIO remoto (ou S3 AWS)
  • Variáveis de ambiente produção
  • Monitoramento (logs, alertas)

Go Check: App funciona em produção, fluxo completo de signup funciona, HTTPS ativo

  • Criar endpoint para editar cliente - backend
  • Criar endpoint para deletar cliente - backend
  • Criar tela de adicionar cliente - frontend
  • Criar tela de editar cliente - frontend
  • Implementar proteção de rotas (autenticação)
  • Criar logout - backend
  • Testar fluxo completo (cadastro até CRM)
  • Corrigir bugs encontrados
  • Deploy final em produção

Go Check: MVP 100% funcional, sem bugs críticos, em produção


📊 Total: 38 Etapas em 5 Semanas

Semana 1: 7 etapas   (Setup)
Semana 2: 7 etapas   (Cadastro P1)
Semana 3: 9 etapas   (Cadastro P2 + Deploy)
Semana 4: 5 etapas   (CRM P1)
Semana 5: 10 etapas  (CRM P2 + Testes + Deploy)
━━━━━━━━━━━━━━━━━━━━━
TOTAL: 38 etapas

Milestones

Fim Semana 1

  • Ambiente local funcional
  • Tudo compila

Fim Semana 2

  • Cadastro steps 1-2 funcionando
  • Landing page ativa

Fim Semana 3

  • Cadastro completo (todos 5 steps)
  • Deploy em Dokploy
  • GitHub CI/CD ativo

Fim Semana 4

  • CRM dashboard pronto
  • Lista de clientes pronto

Fim Semana 5

  • MVP 100% completo
  • Em produção
  • Pronto para usuários

Versão: 1.0
Data: 04/12/2025
Status: Pronto para execução

🚀 Sucesso!