๐ Integrando Auth + Dashboard + AI
Ate agora, cada peca foi construida separadamente. Auth funciona. Dashboard renderiza. IA responde. Upload processa. O desafio agora e diferente: fazer tudo conversar. O login alimenta o dashboard, o dashboard mostra conversas, as conversas usam o pipeline de IA. Nenhuma peca funciona isolada num produto real.
๐ฏ Conceito Principal
A integracao segue um fluxo linear que precisa ser bulletproof: se qualquer elo da corrente quebra, o usuario fica preso. O fluxo e:
- โข Auth โ Session: Login com Supabase retorna JWT. Esse token e armazenado e enviado em todo request subsequente. Sem token valido, nenhuma rota funciona
- โข Session โ Dashboard: O token carrega o user_id. O dashboard busca conversas WHERE user_id = token.sub. Sidebar popula automaticamente. Row Level Security (RLS) no Supabase garante que usuario A nunca ve dados de B
- โข Dashboard โ AI Pipeline: Quando o usuario envia mensagem, o frontend passa o token + conversation_id + message. O backend valida o token, busca o historico da conversa, monta o array de messages com system prompt, e chama a API da LLM
- โข AI Pipeline โ Storage: A resposta e salva no banco (messages table) e streamada para o frontend. Anexos vao para o Supabase Storage com referencia na tabela attachments
๐๏ธ Arquitetura de Integracao
๐ป Middleware de Auth para API Routes
๐ก Dica Pratica
Teste o fluxo completo em sequencia, nao cada peca isolada. Crie uma conta nova, faca login, crie uma conversa, envie uma mensagem com arquivo, receba a resposta, feche o browser, reabra e veja se tudo esta la. Se qualquer etapa falhar, e um bug de integracao que testes unitarios nunca pegam.
๐ Fluxo Completo do Usuario
O fluxo end-to-end e o teste definitivo do seu SaaS. Cada etapa precisa funcionar perfeitamente e transicionar para a proxima sem friccao. Se o usuario sentir um "bump" entre o registro e o primeiro uso, voce esta perdendo gente.
๐ฏ O Fluxo End-to-End
Cada etapa tem seus proprios desafios de UX e pontos de falha. Mapeie todos antes de comecar a implementar:
Register
Formulario com email + senha ou OAuth (Google). Validacao em tempo real (email valido, senha forte). Enviar email de confirmacao. Redirecionar para onboarding apos confirmar.
Onboard
Coletar nome, caso de uso principal, preferencias. Pode ser 1-3 telas com progress bar. Mostrar o valor do produto imediatamente. "Qual e seu primeiro projeto?" ja cria uma conversa automaticamente.
Create Conversation
Botao "Nova Conversa" cria registro no banco e abre a area de chat. Auto-titulo gerado apos a primeira interacao. Conversa aparece imediatamente na sidebar.
Send Message
Usuario digita e envia. Mensagem aparece no chat imediatamente (optimistic update). State transiciona para loading. Input e desabilitado. Typing indicator aparece.
Get AI Response
Backend monta messages array, chama LLM com streaming, tokens chegam ao frontend em tempo real. Resposta completa e salva no banco. State transiciona para success e depois idle.
View History
Sidebar lista todas as conversas. Clicar carrega as mensagens com paginacao. Busca por texto. Fechar e reabrir o browser mantem tudo. Multi-device sincronizado.
๐ Metricas de Referencia para o Fluxo
- โข Time to first value: Do registro ate a primeira resposta da IA em menos de 2 minutos. Se demorar mais, simplifique o onboarding
- โข Completion rate: 80%+ dos que comecam o registro devem chegar a enviar a primeira mensagem. Menos que isso indica friccao no fluxo
- โข Return rate (D1): 30%+ dos usuarios devem voltar no dia seguinte. Se nao voltam, o historico e a qualidade da IA nao estao bons o suficiente
โจ Polishing a Interface
O "polishing" e a diferenca entre um projeto de portfolio e um produto que alguem pagaria para usar. Nao e sobre redesign, e sobre 10 ajustes rapidos que elevam drasticamente a percepcao de qualidade. Cada um leva 5-15 minutos.
๐ฏ 10 Quick UX Wins
๐ก Dica Pratica
Nao tente implementar os 10 de uma vez. Escolha os 3 que mais impactam a primeira experiencia do usuario: loading states, empty states e responsive. O resto e iteracao pos-lancamento.
๐งช Testes de Integracao Rapidos
Voce nao precisa de um framework de testes sofisticado para validar que seu SaaS funciona. O que voce precisa e de um checklist de QA manual que cobre os fluxos criticos. Teste como um usuario, nao como um dev.
๐ฏ Checklist de QA Manual
Auth Flow
AI Pipeline
File Upload
Conversation CRUD
๐ก Dica Pratica
Grave a tela enquanto testa. Use o gravador de tela nativo do seu OS. Quando encontrar um bug, o video ja esta la. E tambem serve como material para o Demo Day (topico 6).
โก Performance Basica
Performance nao e otimizacao prematura quando afeta a experiencia do usuario. Um dashboard que leva 5 segundos para carregar parece quebrado. 4 ajustes basicos resolvem 80% dos problemas de performance sem complexidade.
๐ฏ Os 4 Pilares de Performance para SaaS
-
โข
Image Optimization:
Usar WebP ao inves de PNG/JPEG. Lazy loading com
loading="lazy"em imagens fora da viewport. Next.js Image component faz isso automatico. Avatares: max 100x100px, nao 500x500. -
โข
Lazy Loading de Componentes:
Nao carregar o editor de codigo se o usuario esta na pagina de login.
React.lazy()+ Suspense para code splitting. Reduz bundle inicial em 30-50%. -
โข
API Response Caching:
Conversas ja carregadas nao precisam ser buscadas novamente. Cache local com SWR ou React Query. Stale-while-revalidate: mostra cache primeiro, atualiza em background.
-
โข
Database Query Optimization:
Indices nas colunas usadas em WHERE (user_id, conversation_id, created_at). Paginacao com cursor ao inves de OFFSET. Select apenas colunas necessarias, nao
SELECT *.
๐ป Lighthouse Audit Basico
Abra o Chrome DevTools > Lighthouse > Generate report. Os numeros que importam para MVP:
๐ก Dica Pratica
SWR (stale-while-revalidate) e o melhor amigo de SaaS com IA. A sidebar carrega conversas do cache instantaneamente enquanto busca atualizacoes em background. O usuario nunca ve loading na sidebar apos a primeira vez. npm install swr e 10 linhas de codigo.
โ O que FAZER
- โ Lazy load de imagens e componentes pesados
- โ Cache de API responses com SWR/React Query
- โ Indices no banco para queries frequentes
โ O que NAO fazer
- โ Otimizar prematuramente antes de medir (profile first)
- โ Carregar 500 conversas na sidebar de uma vez
- โ Ignorar o Lighthouse ate o lancamento
๐ฌ Exercicio: Demo Day
Este e o exercicio final da Trilha 3. Voce vai gravar um video de 2 minutos demonstrando seu SaaS funcional. Nao precisa ser perfeito. Precisa funcionar de ponta a ponta. Se funciona no video, funciona na vida real.
Exercicio Final: Gravar Demo de 2 Minutos
Tempo de preparacao: 45-60 minutos | Gravacao: 2 minutos
O video deve cobrir o fluxo completo do usuario. Use o gravador de tela nativo (QuickTime no Mac, OBS no Windows/Linux). Nao edite, nao adicione musica, nao faqa intro. Direto ao ponto.
Login/Register
Abrir o app. Mostrar a tela de login. Fazer login (ou registrar conta nova). Mostrar que redireciona para o dashboard.
Dashboard + Nova Conversa
Mostrar o dashboard com sidebar. Criar nova conversa. Mostrar que aparece na sidebar.
Chat com IA
Enviar uma mensagem. Mostrar o loading/streaming. Receber resposta. Enviar follow-up para provar que o contexto persiste.
Upload de Arquivo
Anexar um PDF ou imagem. Mostrar preview. Enviar com uma pergunta sobre o arquivo. Mostrar que a IA entende o conteudo.
Historico Persistente
Trocar para outra conversa na sidebar. Voltar. Mostrar que mensagens estao la. Fechar e reabrir o browser rapidamente para provar persistencia.
Polish
Mostrar dark mode toggle. Mostrar que funciona no mobile (ou resize do browser). Logout.
โ Checklist Final da Trilha 3
Antes de gravar, verifique cada item. Se todos funcionam, seu SaaS esta pronto para o Demo Day.
๐ Bonus
Compartilhe o video no grupo da imersao ou nas redes sociais. Mostre o que voce construiu. Feedback de outros devs e a melhor forma de melhorar. Se quiser ir alem, faqa um deploy no Vercel e compartilhe o link. Um SaaS que roda em producao vale mais do que qualquer portfolio.
๐ Resumo Final - Trilha 3: Construcao do SaaS
Tudo que voce aprendeu nesta trilha, de auth ate o Demo Day.
Proxima Trilha:
Trilha 4 - Agentes, MCP e Skills. Agora que seu SaaS funciona, e hora de adicionar inteligencia real. Agentes autonomos, Model Context Protocol (MCP), ferramentas e skills que fazem a IA interagir com o mundo real. Seu chatbot vai virar um assistente que age.