Dashboard-Automatizase/docs/architecture/index.md
2025-10-05 21:17:43 -03:00

117 lines
8.3 KiB
Markdown

# AutomatizaSE Portal - Documento de Arquitetura Full-Stack
## Table of Contents
- [AutomatizaSE Portal - Documento de Arquitetura Full-Stack](#table-of-contents)
- [Introdução](./introduo.md)
- [Starter Template ou Projeto Existente](./introduo.md#starter-template-ou-projeto-existente)
- [Change Log](./introduo.md#change-log)
- [Arquitetura de Alto Nível](./arquitetura-de-alto-nvel.md)
- [Resumo Técnico](./arquitetura-de-alto-nvel.md#resumo-tcnico)
- [Escolha de Plataforma e Infraestrutura](./arquitetura-de-alto-nvel.md#escolha-de-plataforma-e-infraestrutura)
- [Estrutura do Repositório](./arquitetura-de-alto-nvel.md#estrutura-do-repositrio)
- [Diagrama de Arquitetura de Alto Nível (POC Simplificada)](./arquitetura-de-alto-nvel.md#diagrama-de-arquitetura-de-alto-nvel-poc-simplificada)
- [Padrões Arquiteturais (Simplificados para POC)](./arquitetura-de-alto-nvel.md#padres-arquiteturais-simplificados-para-poc)
- [Containerização e Orquestração](./containerizao-e-orquestrao.md)
- [Dockerfile (Simplificado para POC)](./containerizao-e-orquestrao.md#dockerfile-simplificado-para-poc)
- [Kubernetes Manifests (POC Mínima)](./containerizao-e-orquestrao.md#kubernetes-manifests-poc-mnima)
- [1. Namespace](./containerizao-e-orquestrao.md#1-namespace)
- [2. ConfigMap](./containerizao-e-orquestrao.md#2-configmap)
- [3. Secret](./containerizao-e-orquestrao.md#3-secret)
- [4. Deployment](./containerizao-e-orquestrao.md#4-deployment)
- [5. Service](./containerizao-e-orquestrao.md#5-service)
- [6. Ingress (Nginx)](./containerizao-e-orquestrao.md#6-ingress-nginx)
- [Deploy Rápido (POC)](./containerizao-e-orquestrao.md#deploy-rpido-poc)
- [Tech Stack](./tech-stack.md)
- [Modelos de Dados](./modelos-de-dados.md)
- [User](./modelos-de-dados.md#user)
- [Interface TypeScript](./modelos-de-dados.md#interface-typescript)
- [Relacionamentos](./modelos-de-dados.md#relacionamentos)
- [UserSettings](./modelos-de-dados.md#usersettings)
- [Interface TypeScript](./modelos-de-dados.md#interface-typescript)
- [Relacionamentos](./modelos-de-dados.md#relacionamentos)
- [GoogleCalendarIntegration](./modelos-de-dados.md#googlecalendarintegration)
- [Interface TypeScript](./modelos-de-dados.md#interface-typescript)
- [Relacionamentos](./modelos-de-dados.md#relacionamentos)
- [WhatsAppInstance](./modelos-de-dados.md#whatsappinstance)
- [Interface TypeScript](./modelos-de-dados.md#interface-typescript)
- [Relacionamentos](./modelos-de-dados.md#relacionamentos)
- [Especificação da API](./especificao-da-api.md)
- [REST API](./especificao-da-api.md#rest-api)
- [Componentes](./componentes.md)
- [NextJS Frontend App](./componentes.md#nextjs-frontend-app)
- [NextJS API Routes (BFF)](./componentes.md#nextjs-api-routes-bff)
- [Supabase Backend](./componentes.md#supabase-backend)
- [Diagrama de Componentes](./componentes.md#diagrama-de-componentes)
- [APIs Externas](./apis-externas.md)
- [EvolutionAPI](./apis-externas.md#evolutionapi)
- [Google Calendar OAuth (via n8n)](./apis-externas.md#google-calendar-oauth-via-n8n)
- [Workflows Principais](./workflows-principais.md)
- [Login Flow](./workflows-principais.md#login-flow)
- [WhatsApp QR Code Flow](./workflows-principais.md#whatsapp-qr-code-flow)
- [Google Calendar OAuth Flow](./workflows-principais.md#google-calendar-oauth-flow)
- [Schema do Banco de Dados](./schema-do-banco-de-dados.md)
- [Schema: ](./schema-do-banco-de-dados.md#schema)
- [Arquitetura Frontend](./arquitetura-frontend.md)
- [Arquitetura de Componentes](./arquitetura-frontend.md#arquitetura-de-componentes)
- [Organização de Componentes](./arquitetura-frontend.md#organizao-de-componentes)
- [Template de Componente](./arquitetura-frontend.md#template-de-componente)
- [Gerenciamento de Estado](./arquitetura-frontend.md#gerenciamento-de-estado)
- [Estrutura de Estado](./arquitetura-frontend.md#estrutura-de-estado)
- [Padrões de Gerenciamento de Estado](./arquitetura-frontend.md#padres-de-gerenciamento-de-estado)
- [Arquitetura de Roteamento](./arquitetura-frontend.md#arquitetura-de-roteamento)
- [Organização de Rotas](./arquitetura-frontend.md#organizao-de-rotas)
- [Padrão de Rota Protegida](./arquitetura-frontend.md#padro-de-rota-protegida)
- [Camada de Serviços Frontend](./arquitetura-frontend.md#camada-de-servios-frontend)
- [Setup do Cliente API](./arquitetura-frontend.md#setup-do-cliente-api)
- [Exemplo de Serviço](./arquitetura-frontend.md#exemplo-de-servio)
- [Arquitetura Backend](./arquitetura-backend.md)
- [Arquitetura de Serviços (Serverless)](./arquitetura-backend.md#arquitetura-de-servios-serverless)
- [Organização de Funções](./arquitetura-backend.md#organizao-de-funes)
- [Template de Função](./arquitetura-backend.md#template-de-funo)
- [Arquitetura de Banco de Dados](./arquitetura-backend.md#arquitetura-de-banco-de-dados)
- [Design do Schema](./arquitetura-backend.md#design-do-schema)
- [Camada de Acesso a Dados](./arquitetura-backend.md#camada-de-acesso-a-dados)
- [Autenticação e Autorização](./arquitetura-backend.md#autenticao-e-autorizao)
- [Fluxo de Auth](./arquitetura-backend.md#fluxo-de-auth)
- [Middleware/Guards](./arquitetura-backend.md#middlewareguards)
- [Estrutura Unificada do Projeto](./source-tree.md)
- [Workflow de Desenvolvimento](./workflow-de-desenvolvimento.md)
- [Setup de Desenvolvimento Local](./workflow-de-desenvolvimento.md#setup-de-desenvolvimento-local)
- [Pré-requisitos](./workflow-de-desenvolvimento.md#pr-requisitos)
- [Setup Inicial](./workflow-de-desenvolvimento.md#setup-inicial)
- [Comandos de Desenvolvimento](./workflow-de-desenvolvimento.md#comandos-de-desenvolvimento)
- [Configuração de Ambiente](./workflow-de-desenvolvimento.md#configurao-de-ambiente)
- [Variáveis de Ambiente Necessárias](./workflow-de-desenvolvimento.md#variveis-de-ambiente-necessrias)
- [Arquitetura de Deploy](./arquitetura-de-deploy.md)
- [Estratégia de Deploy](./arquitetura-de-deploy.md#estratgia-de-deploy)
- [Pipeline CI/CD](./arquitetura-de-deploy.md#pipeline-cicd)
- [Ambientes](./arquitetura-de-deploy.md#ambientes)
- [Segurança e Performance](./segurana-e-performance.md)
- [Requisitos de Segurança](./segurana-e-performance.md#requisitos-de-segurana)
- [Otimização de Performance](./segurana-e-performance.md#otimizao-de-performance)
- [Estratégia de Testes](./estratgia-de-testes.md)
- [Pirâmide de Testes](./estratgia-de-testes.md#pirmide-de-testes)
- [Organização de Testes](./estratgia-de-testes.md#organizao-de-testes)
- [Testes Frontend](./estratgia-de-testes.md#testes-frontend)
- [Testes Backend](./estratgia-de-testes.md#testes-backend)
- [Testes E2E](./estratgia-de-testes.md#testes-e2e)
- [Exemplos de Testes](./estratgia-de-testes.md#exemplos-de-testes)
- [Teste de Componente Frontend](./estratgia-de-testes.md#teste-de-componente-frontend)
- [Teste de API Backend](./estratgia-de-testes.md#teste-de-api-backend)
- [Teste E2E](./estratgia-de-testes.md#teste-e2e)
- [Padrões de Código](./coding-standards.md)
- [Regras Críticas Fullstack](./coding-standards.md#regras-crticas-fullstack)
- [Convenções de Nomenclatura](./coding-standards.md#convenes-de-nomenclatura)
- [Estratégia de Tratamento de Erros](./estratgia-de-tratamento-de-erros.md)
- [Fluxo de Erros](./estratgia-de-tratamento-de-erros.md#fluxo-de-erros)
- [Formato de Resposta de Erro](./estratgia-de-tratamento-de-erros.md#formato-de-resposta-de-erro)
- [Tratamento de Erros Frontend](./estratgia-de-tratamento-de-erros.md#tratamento-de-erros-frontend)
- [Tratamento de Erros Backend](./estratgia-de-tratamento-de-erros.md#tratamento-de-erros-backend)
- [Monitoramento (POC Simplificada)](./monitoramento-poc-simplificada.md)
- [Logs Básicos](./monitoramento-poc-simplificada.md#logs-bsicos)
- [Relatório de Resultados do Checklist](./relatrio-de-resultados-do-checklist.md)
- [Resumo Executivo](./relatrio-de-resultados-do-checklist.md#resumo-executivo)
- [Recomendações](./relatrio-de-resultados-do-checklist.md#recomendaes)
- [Decisão Final](./relatrio-de-resultados-do-checklist.md#deciso-final)