Dashboard-Automatizase/docs/prd/4-technical-assumptions.md
2025-10-05 21:17:43 -03:00

1.5 KiB

4. Technical Assumptions

Repository Structure

Monorepo - Projeto NextJS único contendo frontend e API routes

Service Architecture

Monolith com API Routes do NextJS - Frontend NextJS com API routes para comunicação com EvolutionAPI e Supabase. Supabase gerencia autenticação, banco de dados (schema portal), e recuperação de senha via SMTP.

Testing Requirements

Manual Testing - POC focada em validação manual, sem suite de testes automatizados inicialmente. Conveniente incluir logs detalhados para debugging.

Additional Technical Assumptions

  • Framework: NextJS 14+ (App Router)
  • UI Components: Shadcn/ui ou TailwindCSS puro para tema escuro e componentes
  • Auth: Supabase Auth (unificado com projeto existente)
  • Database: Supabase PostgreSQL, schema portal
  • EvolutionAPI: Integração via fetch/axios com endpoints REST
  • OAuth Google Calendar: Redirecionamento para n8n webhook (n8n gerencia credenciais)
  • Deployment: Vercel (recomendado para NextJS) ou outra plataforma com suporte a variáveis de ambiente
  • Environment Variables:
    EVOLUTION_API_URL
    EVOLUTION_API_KEY
    EVOLUTION_INSTANCE_NAMES (comma-separated)
    N8N_OAUTH_URL
    SUPABASE_URL
    SUPABASE_ANON_KEY
    SUPABASE_SERVICE_ROLE_KEY
    NEXT_PUBLIC_SITE_URL
    
  • Estado: Usar React state/hooks para gerenciar status de conexões, evitar bibliotecas de estado pesadas
  • Polling: Implementar polling simples (ex: a cada 5s) para atualizar status de instâncias WhatsApp se necessário