docs: adiciona mapa mental completo do projeto
This commit is contained in:
529
1. docs/mapa-mental-projeto.md
Normal file
529
1. docs/mapa-mental-projeto.md
Normal file
@@ -0,0 +1,529 @@
|
|||||||
|
# 🧠 Mapa Mental - Projeto Aggios
|
||||||
|
|
||||||
|
## 📌 Visão Geral
|
||||||
|
**Aggios** é uma plataforma **SaaS multi-tenant** que gerencia agências digitais com controle centralizado, gestão de clientes, soluções integradas (CRM/ERP) e sistema de pagamento.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🏛️ Arquitetura Geral
|
||||||
|
|
||||||
|
```
|
||||||
|
┌─────────────────────────────────────────────────────────┐
|
||||||
|
│ AGGIOS PLATFORM │
|
||||||
|
├─────────────────────────────────────────────────────────┤
|
||||||
|
│ │
|
||||||
|
│ ┌──────────────────────────────────────────────────┐ │
|
||||||
|
│ │ Super Admin Dashboard (dash.localhost) │ │
|
||||||
|
│ │ - Gerenciar todas as agências │ │
|
||||||
|
│ │ - Visualizar cadastros │ │
|
||||||
|
│ │ - Excluir/arquivar agências │ │
|
||||||
|
│ │ - Controle de planos e pagamentos │ │
|
||||||
|
│ └──────────────────────────────────────────────────┘ │
|
||||||
|
│ │ │
|
||||||
|
│ ┌────────────┼────────────┐ │
|
||||||
|
│ │ │ │ │
|
||||||
|
│ ┌────────▼──┐ ┌─────▼────┐ ┌───▼────────┐ │
|
||||||
|
│ │ Agência A │ │ Agência B │ │ Agência N │ │
|
||||||
|
│ │ Subdomain │ │ Subdomain │ │ Subdomain │ │
|
||||||
|
│ │ A │ │ B │ │ N │ │
|
||||||
|
│ └─────┬─────┘ └──────┬────┘ └────┬───────┘ │
|
||||||
|
│ │ │ │ │
|
||||||
|
│ ┌─────▼──────┐ ┌─────▼──────┐ ┌─▼───────────┐ │
|
||||||
|
│ │CRM / ERP │ │CRM / ERP │ │CRM / ERP │ │
|
||||||
|
│ │Clientes │ │Clientes │ │Clientes │ │
|
||||||
|
│ │Soluções │ │Soluções │ │Soluções │ │
|
||||||
|
│ └────────────┘ └────────────┘ └─────────────┘ │
|
||||||
|
│ │
|
||||||
|
└─────────────────────────────────────────────────────────┘
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🔐 Sistema de Autenticação
|
||||||
|
|
||||||
|
### Níveis de Acesso
|
||||||
|
|
||||||
|
```
|
||||||
|
┌─────────────────────────────────────────┐
|
||||||
|
│ PERMISSÕES E ROLES │
|
||||||
|
├─────────────────────────────────────────┤
|
||||||
|
│ │
|
||||||
|
│ SUPERADMIN (admin@aggios.app) │
|
||||||
|
│ ├─ Gerenciar todas as agências │
|
||||||
|
│ ├─ Visualizar cadastros │
|
||||||
|
│ ├─ Excluir/arquivar agências │
|
||||||
|
│ ├─ Controlar planos │
|
||||||
|
│ └─ Gerenciar pagamentos │
|
||||||
|
│ │
|
||||||
|
│ ADMIN_AGENCIA (por agência) │
|
||||||
|
│ ├─ Gerenciar clientes próprios │
|
||||||
|
│ ├─ Acessar CRM/ERP │
|
||||||
|
│ ├─ Visualizar relatórios │
|
||||||
|
│ └─ Configurar agência │
|
||||||
|
│ │
|
||||||
|
│ CLIENTE (por agência) │
|
||||||
|
│ ├─ Visualizar próprios dados │
|
||||||
|
│ ├─ Acessar serviços contratados │
|
||||||
|
│ └─ Submeter solicitações │
|
||||||
|
│ │
|
||||||
|
└─────────────────────────────────────────┘
|
||||||
|
```
|
||||||
|
|
||||||
|
### Fluxo de Login
|
||||||
|
|
||||||
|
```
|
||||||
|
Usuário acessa:
|
||||||
|
dash.localhost
|
||||||
|
↓
|
||||||
|
Detecta "dash" no hostname
|
||||||
|
↓
|
||||||
|
Busca localStorage (token + user)
|
||||||
|
↓
|
||||||
|
┌─ Token válido? → Redireciona para /superadmin
|
||||||
|
│
|
||||||
|
└─ Sem token? → Mostra /login
|
||||||
|
↓
|
||||||
|
Submete credenciais
|
||||||
|
↓
|
||||||
|
Backend valida contra DB
|
||||||
|
↓
|
||||||
|
┌─ Válido → Retorna JWT + user data
|
||||||
|
│ → Salva em localStorage
|
||||||
|
│ → Redireciona para /superadmin
|
||||||
|
│
|
||||||
|
└─ Inválido → Toast error
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🏢 Estrutura de Tenants
|
||||||
|
|
||||||
|
### Multi-Tenant Model
|
||||||
|
|
||||||
|
```
|
||||||
|
┌─────────────────────────────────────────┐
|
||||||
|
│ TENANT (Agência) │
|
||||||
|
├─────────────────────────────────────────┤
|
||||||
|
│ │
|
||||||
|
│ ID: UUID │
|
||||||
|
│ name: "Agência Ideal Pages" │
|
||||||
|
│ subdomain: "idealpages" │
|
||||||
|
│ domain: "idealpages.aggios.app" │
|
||||||
|
│ cnpj: "XX.XXX.XXX/XXXX-XX" │
|
||||||
|
│ razao_social: "Ideal Pages Ltda" │
|
||||||
|
│ status: active | inactive │
|
||||||
|
│ │
|
||||||
|
│ ┌─────────────────────────────────┐ │
|
||||||
|
│ │ USERS (pertencentes ao tenant) │ │
|
||||||
|
│ ├─────────────────────────────────┤ │
|
||||||
|
│ │ - Admin (ADMIN_AGENCIA) │ │
|
||||||
|
│ │ - Operadores │ │
|
||||||
|
│ │ - Suporte │ │
|
||||||
|
│ │ - Clientes │ │
|
||||||
|
│ └─────────────────────────────────┘ │
|
||||||
|
│ │
|
||||||
|
│ ┌─────────────────────────────────┐ │
|
||||||
|
│ │ COMPANIES (clientes) │ │
|
||||||
|
│ ├─────────────────────────────────┤ │
|
||||||
|
│ │ - ID, CNPJ, email, telefone │ │
|
||||||
|
│ │ - Dados de contato │ │
|
||||||
|
│ │ - Status │ │
|
||||||
|
│ └─────────────────────────────────┘ │
|
||||||
|
│ │
|
||||||
|
│ ┌─────────────────────────────────┐ │
|
||||||
|
│ │ SOLUTIONS (CRM, ERP, etc) │ │
|
||||||
|
│ ├─────────────────────────────────┤ │
|
||||||
|
│ │ - Módulos disponíveis │ │
|
||||||
|
│ │ - Integrações │ │
|
||||||
|
│ │ - Configurações │ │
|
||||||
|
│ └─────────────────────────────────┘ │
|
||||||
|
│ │
|
||||||
|
└─────────────────────────────────────────┘
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🛠️ Tech Stack
|
||||||
|
|
||||||
|
### Backend
|
||||||
|
```
|
||||||
|
Backend (Go)
|
||||||
|
├─ HTTP Server (net/http)
|
||||||
|
├─ JWT Authentication
|
||||||
|
├─ Password Hashing (Argon2)
|
||||||
|
├─ PostgreSQL (SQL direto, sem ORM)
|
||||||
|
├─ Redis (cache/sessions)
|
||||||
|
├─ MinIO (object storage)
|
||||||
|
└─ Middleware (CORS, Security, Rate Limit)
|
||||||
|
```
|
||||||
|
|
||||||
|
### Frontend
|
||||||
|
```
|
||||||
|
Frontend (Next.js 14)
|
||||||
|
├─ Dashboard (Superadmin)
|
||||||
|
│ ├─ Listagem de agências
|
||||||
|
│ ├─ Detalhes/visualização
|
||||||
|
│ └─ Excluir/arquivar
|
||||||
|
│
|
||||||
|
├─ Portais de Agência
|
||||||
|
│ ├─ Login específico por subdomain
|
||||||
|
│ ├─ Dashboard da agência
|
||||||
|
│ ├─ Gerenciador de clientes (CRM)
|
||||||
|
│ ├─ ERP
|
||||||
|
│ └─ Integrações
|
||||||
|
│
|
||||||
|
└─ Site Institucional (aggios.app)
|
||||||
|
├─ Landing page
|
||||||
|
├─ Pricing/Planos
|
||||||
|
├─ Documentação
|
||||||
|
└─ Contato
|
||||||
|
```
|
||||||
|
|
||||||
|
### Infraestrutura
|
||||||
|
```
|
||||||
|
Docker Compose
|
||||||
|
├─ PostgreSQL 16 (DB)
|
||||||
|
├─ Redis 7 (Cache)
|
||||||
|
├─ MinIO (S3-compatible storage)
|
||||||
|
├─ Traefik (Reverse Proxy)
|
||||||
|
├─ Backend (Go)
|
||||||
|
├─ Dashboard (Next.js)
|
||||||
|
└─ Institucional (Next.js)
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📊 Banco de Dados
|
||||||
|
|
||||||
|
### Schema Principal
|
||||||
|
|
||||||
|
```
|
||||||
|
┌──────────────────────────────────────────────────┐
|
||||||
|
│ DATABASE SCHEMA │
|
||||||
|
├──────────────────────────────────────────────────┤
|
||||||
|
│ │
|
||||||
|
│ TENANTS │
|
||||||
|
│ ├─ id (UUID) │
|
||||||
|
│ ├─ name, subdomain, domain │
|
||||||
|
│ ├─ cnpj, razao_social │
|
||||||
|
│ ├─ email, phone, website, address │
|
||||||
|
│ ├─ description, industry │
|
||||||
|
│ ├─ is_active │
|
||||||
|
│ └─ timestamps (created_at, updated_at) │
|
||||||
|
│ ↑ │
|
||||||
|
│ └─── FK em USERS │
|
||||||
|
│ └─── FK em COMPANIES │
|
||||||
|
│ │
|
||||||
|
│ USERS │
|
||||||
|
│ ├─ id (UUID) │
|
||||||
|
│ ├─ tenant_id (FK → TENANTS) │
|
||||||
|
│ ├─ email (UNIQUE) │
|
||||||
|
│ ├─ password_hash │
|
||||||
|
│ ├─ first_name, last_name │
|
||||||
|
│ ├─ role (SUPERADMIN | ADMIN_AGENCIA | CLIENTE) │
|
||||||
|
│ ├─ is_active │
|
||||||
|
│ └─ timestamps │
|
||||||
|
│ │
|
||||||
|
│ REFRESH_TOKENS │
|
||||||
|
│ ├─ id (UUID) │
|
||||||
|
│ ├─ user_id (FK → USERS) │
|
||||||
|
│ ├─ token_hash │
|
||||||
|
│ ├─ expires_at │
|
||||||
|
│ └─ created_at │
|
||||||
|
│ │
|
||||||
|
│ COMPANIES (Clientes das agências) │
|
||||||
|
│ ├─ id (UUID) │
|
||||||
|
│ ├─ tenant_id (FK → TENANTS) │
|
||||||
|
│ ├─ cnpj (UNIQUE por tenant) │
|
||||||
|
│ ├─ razao_social, nome_fantasia │
|
||||||
|
│ ├─ email, telefone │
|
||||||
|
│ ├─ status │
|
||||||
|
│ ├─ created_by_user_id (FK → USERS) │
|
||||||
|
│ └─ timestamps │
|
||||||
|
│ │
|
||||||
|
└──────────────────────────────────────────────────┘
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🔄 Fluxo de Cadastro (Registro de Nova Agência)
|
||||||
|
|
||||||
|
```
|
||||||
|
1. INICIO
|
||||||
|
│
|
||||||
|
├─ Usuário acessa: http://dash.localhost/cadastro
|
||||||
|
│
|
||||||
|
├─ Preenche formulário:
|
||||||
|
│ ├─ Nome fantasia
|
||||||
|
│ ├─ Razão social
|
||||||
|
│ ├─ CNPJ
|
||||||
|
│ ├─ Email comercial
|
||||||
|
│ ├─ Telefone
|
||||||
|
│ ├─ Website
|
||||||
|
│ ├─ Endereço completo
|
||||||
|
│ ├─ Cidade/Estado/CEP
|
||||||
|
│ ├─ Segmento (indústria)
|
||||||
|
│ ├─ Descrição
|
||||||
|
│ ├─ Email do admin da agência
|
||||||
|
│ └─ Senha inicial do admin
|
||||||
|
│
|
||||||
|
├─ Validação Frontend
|
||||||
|
│ ├─ Campos obrigatórios
|
||||||
|
│ ├─ Formato de email
|
||||||
|
│ ├─ Força de senha
|
||||||
|
│ └─ CNPJ válido?
|
||||||
|
│
|
||||||
|
├─ POST /api/admin/agencies/register (Backend)
|
||||||
|
│ │
|
||||||
|
│ ├─ Validação Backend (regras de negócio)
|
||||||
|
│ │
|
||||||
|
│ ├─ Transação DB:
|
||||||
|
│ │ ├─ Criar TENANT (gera UUID, subdomain)
|
||||||
|
│ │ ├─ Criar USER (ADMIN_AGENCIA)
|
||||||
|
│ │ ├─ Hash password (Argon2)
|
||||||
|
│ │ └─ Commit
|
||||||
|
│ │
|
||||||
|
│ └─ Retorna: {tenant_id, subdomain, access_url}
|
||||||
|
│
|
||||||
|
├─ Frontend recebe resposta
|
||||||
|
│ ├─ Exibe toast de sucesso
|
||||||
|
│ ├─ Salva dados temporários
|
||||||
|
│ └─ Redireciona para /superadmin
|
||||||
|
│
|
||||||
|
└─ FIM (Agência criada e pronta para uso)
|
||||||
|
└─ Acesso: {subdomain}.localhost/login
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📈 Funcionalidades por Módulo
|
||||||
|
|
||||||
|
### 🔷 Superadmin Dashboard
|
||||||
|
|
||||||
|
```
|
||||||
|
dash.localhost/superadmin
|
||||||
|
├─ Header
|
||||||
|
│ ├─ Logo Aggios
|
||||||
|
│ ├─ Título "Painel Administrativo"
|
||||||
|
│ ├─ Email do admin
|
||||||
|
│ └─ Botão Sair
|
||||||
|
│
|
||||||
|
├─ Stats (KPIs)
|
||||||
|
│ ├─ Total de agências
|
||||||
|
│ ├─ Agências ativas
|
||||||
|
│ ├─ Agências inativas
|
||||||
|
│ └─ (Expandível: faturamento, etc)
|
||||||
|
│
|
||||||
|
├─ Listagem de Agências
|
||||||
|
│ ├─ Tabela com:
|
||||||
|
│ │ ├─ Nome fantasia
|
||||||
|
│ │ ├─ Subdomain
|
||||||
|
│ │ ├─ Status (ativo/inativo)
|
||||||
|
│ │ ├─ Data de criação
|
||||||
|
│ │ └─ Ações (Ver detalhes, Deletar)
|
||||||
|
│ │
|
||||||
|
│ └─ Busca/Filtro
|
||||||
|
│
|
||||||
|
└─ Modal de Detalhes
|
||||||
|
├─ Seção: Dados da Agência
|
||||||
|
│ ├─ Nome fantasia, razão social
|
||||||
|
│ ├─ CNPJ, segmento
|
||||||
|
│ ├─ Descrição
|
||||||
|
│ └─ Status
|
||||||
|
│
|
||||||
|
├─ Seção: Endereço e Contato
|
||||||
|
│ ├─ Endereço, cidade, estado, CEP
|
||||||
|
│ ├─ Website
|
||||||
|
│ ├─ Email comercial
|
||||||
|
│ └─ Telefone
|
||||||
|
│
|
||||||
|
├─ Seção: Administrador
|
||||||
|
│ ├─ Nome do admin
|
||||||
|
│ ├─ Email do admin
|
||||||
|
│ ├─ Role
|
||||||
|
│ └─ Data de criação
|
||||||
|
│
|
||||||
|
└─ Botões
|
||||||
|
├─ Abrir painel da agência (link externo)
|
||||||
|
├─ Deletar agência
|
||||||
|
└─ Fechar
|
||||||
|
```
|
||||||
|
|
||||||
|
### 🔶 Dashboard da Agência (Em Desenvolvimento)
|
||||||
|
|
||||||
|
```
|
||||||
|
{subdomain}.localhost/dashboard
|
||||||
|
├─ Sidebar
|
||||||
|
│ ├─ Dashboard
|
||||||
|
│ ├─ Clientes (CRM)
|
||||||
|
│ ├─ Projetos
|
||||||
|
│ ├─ Financeiro (ERP)
|
||||||
|
│ ├─ Configurações
|
||||||
|
│ └─ Suporte
|
||||||
|
│
|
||||||
|
├─ Stats
|
||||||
|
│ ├─ Total de clientes
|
||||||
|
│ ├─ Projetos em andamento
|
||||||
|
│ ├─ Tarefas pendentes
|
||||||
|
│ └─ Faturamento
|
||||||
|
│
|
||||||
|
└─ Seções (em construção)
|
||||||
|
├─ CRM → Gerenciar clientes, pipeline, negociações
|
||||||
|
├─ ERP → Pedidos, estoque, NF, financeiro
|
||||||
|
├─ Projetos → Planejamento, execução, entrega
|
||||||
|
└─ Integrações → API, webhooks, automações
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🔌 APIs Principais
|
||||||
|
|
||||||
|
### Autenticação
|
||||||
|
|
||||||
|
```
|
||||||
|
POST /api/auth/login
|
||||||
|
Request: { email, password }
|
||||||
|
Response: { token, user: { id, email, name, role } }
|
||||||
|
|
||||||
|
POST /api/auth/change-password
|
||||||
|
Request: { old_password, new_password }
|
||||||
|
Response: { success: true }
|
||||||
|
|
||||||
|
POST /api/auth/logout
|
||||||
|
Request: {}
|
||||||
|
Response: { success: true }
|
||||||
|
```
|
||||||
|
|
||||||
|
### Agências (Superadmin)
|
||||||
|
|
||||||
|
```
|
||||||
|
GET /api/admin/agencies
|
||||||
|
Response: [{ id, name, subdomain, status, ... }]
|
||||||
|
|
||||||
|
POST /api/admin/agencies/register
|
||||||
|
Request: { name, cnpj, email, admin_email, admin_password, ... }
|
||||||
|
Response: { tenant_id, subdomain, access_url }
|
||||||
|
|
||||||
|
GET /api/admin/agencies/{id}
|
||||||
|
Response: { tenant, admin, access_url, ... }
|
||||||
|
|
||||||
|
DELETE /api/admin/agencies/{id}
|
||||||
|
Response: { success: true } | 204 No Content
|
||||||
|
|
||||||
|
PATCH /api/admin/agencies/{id}
|
||||||
|
Request: { status, ... }
|
||||||
|
Response: { tenant }
|
||||||
|
```
|
||||||
|
|
||||||
|
### Empresas/Clientes
|
||||||
|
|
||||||
|
```
|
||||||
|
GET /api/companies
|
||||||
|
Response: [{ id, cnpj, razao_social, email, ... }]
|
||||||
|
|
||||||
|
POST /api/companies/create
|
||||||
|
Request: { cnpj, razao_social, email, telefone, ... }
|
||||||
|
Response: { company }
|
||||||
|
|
||||||
|
GET /api/companies/{id}
|
||||||
|
Response: { company }
|
||||||
|
|
||||||
|
PUT /api/companies/{id}
|
||||||
|
Request: { razao_social, email, ... }
|
||||||
|
Response: { company }
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🚀 Ciclo de Desenvolvimento Atual
|
||||||
|
|
||||||
|
### v1.1 (dev-1.1) - Em Progresso
|
||||||
|
|
||||||
|
- ✅ Reorganização do banco (init-db em backend/internal/data/postgres)
|
||||||
|
- ✅ Autenticação de login com redirect automático
|
||||||
|
- ✅ Aumento de rate limit em dev (30 tentativas/min)
|
||||||
|
- 🔄 Melhorias na UX do dashboard superadmin
|
||||||
|
- ⏳ Implementação de CRM (clientes, pipeline)
|
||||||
|
- ⏳ Implementação de ERP básico (pedidos, financeiro)
|
||||||
|
|
||||||
|
### Próximas Versões
|
||||||
|
|
||||||
|
- 📅 v1.2: Soft delete, auditoria, trilha de mudanças
|
||||||
|
- 📅 v1.3: Integrações externas (Zapier, Make, etc)
|
||||||
|
- 📅 v1.4: Sistema de pagamento (Stripe, PagSeguro)
|
||||||
|
- 📅 v2.0: Marketplace de templates/extensões
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📋 Checklist de Implementação
|
||||||
|
|
||||||
|
### Backend
|
||||||
|
- [x] Setup inicial (config, database, middleware)
|
||||||
|
- [x] Autenticação (JWT, refresh tokens)
|
||||||
|
- [x] Repositórios (sem ORM, SQL direto)
|
||||||
|
- [x] Serviços (business logic)
|
||||||
|
- [x] Handlers (endpoints)
|
||||||
|
- [x] Rate limiting
|
||||||
|
- [ ] Soft delete & auditoria
|
||||||
|
- [ ] Logging estruturado
|
||||||
|
- [ ] Testes unitários
|
||||||
|
- [ ] Documentação de API
|
||||||
|
|
||||||
|
### Frontend
|
||||||
|
- [x] Login com redirect automático
|
||||||
|
- [x] Dashboard superadmin (lista, detalhes, delete)
|
||||||
|
- [x] Site institucional
|
||||||
|
- [ ] Dashboard da agência (CRM base)
|
||||||
|
- [ ] Gestão de clientes
|
||||||
|
- [ ] Formulários avançados
|
||||||
|
- [ ] Testes e2e
|
||||||
|
|
||||||
|
### DevOps
|
||||||
|
- [x] Docker Compose com todos os serviços
|
||||||
|
- [x] Traefik reverse proxy
|
||||||
|
- [x] PostgreSQL com seed data
|
||||||
|
- [x] Redis e MinIO
|
||||||
|
- [ ] CI/CD pipeline
|
||||||
|
- [ ] Monitoramento
|
||||||
|
- [ ] Backup strategy
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 💡 Notas Importantes
|
||||||
|
|
||||||
|
### Por Que Sem ORM?
|
||||||
|
|
||||||
|
- Controle fino sobre queries
|
||||||
|
- Performance previsível
|
||||||
|
- Menos abstrações, mais explícito
|
||||||
|
- Facilita debugging
|
||||||
|
- Legível para new devs
|
||||||
|
|
||||||
|
**Trade-off:** Mais boilerplate de SQL, mas melhor para equipes experientes.
|
||||||
|
|
||||||
|
### Segurança
|
||||||
|
|
||||||
|
- JWT + Refresh tokens
|
||||||
|
- Password hashing (Argon2)
|
||||||
|
- Rate limiting (5 req/min em prod, 30 em dev)
|
||||||
|
- CORS configurado
|
||||||
|
- Security headers
|
||||||
|
- Input validation em frontend + backend
|
||||||
|
|
||||||
|
### Escalabilidade
|
||||||
|
|
||||||
|
- Multi-tenant isolado por tenant_id
|
||||||
|
- Índices em FK e campos frequentes
|
||||||
|
- Redis para cache de sessions
|
||||||
|
- MinIO para object storage
|
||||||
|
- Stateless backend (escalável horizontalmente)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📞 Contatos & Referências
|
||||||
|
|
||||||
|
- **Repository:** https://git.stackbyte.cloud/erik/aggios.app.git
|
||||||
|
- **Documentação detalhada:** `/1. docs/backend-deployment/`
|
||||||
|
- **API Reference:** `/1. docs/backend-deployment/API_REFERENCE.md`
|
||||||
|
- **Deployment Guide:** `/1. docs/backend-deployment/DEPLOYMENT.md`
|
||||||
|
|
||||||
Reference in New Issue
Block a user