Dashboard-Automatizase/README.md
Luis Erlacher 0152a2fda0 feat: add n8n API testing script for Google OAuth2 schema and existing credentials
- Implemented a bash script to test n8n API and retrieve credential schemas.
- Added types for API responses, Google Calendar, and WhatsApp instances.
- Configured Vitest for testing with React and added setup for testing-library.
2025-10-10 14:29:02 -03:00

2.4 KiB

AutomatizaSE Portal

Portal web para gerenciamento de conexões WhatsApp (EvolutionAPI) e autorização OAuth do Google Calendar.

Setup

  1. Clone o repositório
  2. Copie .env.local.example para .env.local
  3. Preencha as variáveis de ambiente
  4. Configure o Supabase (veja seção abaixo)
  5. Instale dependências: npm install
  6. Rode o servidor: npm run dev
  7. Acesse: http://localhost:3000

Configuração do Supabase

1. Criar Schema e Tabelas

No Supabase Dashboard, vá em SQL Editor e execute o script:

docs/sql/01-schema-portal.sql

Este script irá:

  • Criar o schema portal
  • Criar tabelas user_settings e integrations
  • Habilitar Row Level Security (RLS)
  • Configurar políticas de acesso

2. Configurar SMTP para Autenticação

No Supabase Dashboard:

  1. Vá em Authentication → Email Templates → SMTP Settings
  2. Configure:

3. Testar Conexão

Após configurar, acesse: http://localhost:3000/test-supabase

Se tudo estiver correto, você verá: Supabase connected successfully!

Tech Stack

  • NextJS 14+ (App Router)
  • TailwindCSS v4
  • Supabase (Auth + Database)
  • TypeScript

Variáveis de Ambiente

Veja o arquivo .env.local.example para todas as variáveis necessárias:

  • Supabase: URL e chaves de API
  • EvolutionAPI: URL, API key e nomes de instâncias
  • n8n: URL do webhook OAuth
  • Site: URL pública do site

Estrutura do Projeto

/app            - Páginas e rotas da aplicação
/components     - Componentes React reutilizáveis
/lib            - Bibliotecas e utilitários
/types          - Definições de tipos TypeScript
/hooks          - React hooks customizados
/services       - Camada de serviços

Scripts Disponíveis

npm run dev      # Inicia servidor de desenvolvimento
npm run build    # Build de produção
npm run start    # Inicia servidor de produção
npm run lint     # Executa linting
npm run format   # Formata código

Tema Escuro

O projeto usa tema escuro por padrão. Todas as cores estão centralizadas no arquivo app/globals.css. Para alterar as cores do projeto inteiro, basta editar as variáveis CSS em :root.