1.5 KiB
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