feat: site institucional completo com design system - Implementa\u00e7\u00e3o do site institucional da Aggios com design system completo incluindo gradientes, tipografia, componentes e se\u00e7\u00f5es de recursos, pre\u00e7os e CTA
This commit is contained in:
217
1. docs/plano.md
Normal file
217
1. docs/plano.md
Normal file
@@ -0,0 +1,217 @@
|
||||
# 📋 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!**
|
||||
Reference in New Issue
Block a user