
Restaurar
Aplicativo em que a IA lê o que a pessoa escreve sobre o próprio casamento e devolve orientação prática, apoiada em uma base de conteúdo indexada.
- Ano
- 2026
- Tipo
- Produto
- Status
- Em desenvolvimento
- Código
- Proprietário
Stack
- Next.js
- React Native
- Expo
- TypeScript
- Supabase
- PostgreSQL
- OpenAI
- NativeWind

Sobre o projeto
No Restaurar a pessoa registra situações reais do próprio relacionamento e recebe orientação prática gerada por IA, ancorada numa base de conteúdo indexada antes: livros, vídeos, lives e materiais de formação.
Problema
Um modelo de linguagem genérico responde qualquer coisa sobre relacionamento, e é aí que mora o problema. Sem uma base definida, a resposta vira opinião estatística. Num domínio sensível como esse, uma resposta ruim passa de inútil a perigosa.
Solução
Duas restrições foram desenhadas antes da funcionalidade principal.
A primeira é que a resposta vem de uma base, não do modelo solto. O conteúdo é dividido em
trechos e indexado (content_sources para content_chunks). A cada mensagem, os trechos
relevantes são recuperados e passados ao modelo como contexto, então a IA reformula material que
já existe em vez de inventar orientação.
A segunda é que existe um caminho que nunca chega ao modelo. Toda mensagem passa por uma
detecção de risco. Se o texto sugere violência ou risco à vida, a requisição para ali e o app
devolve uma resposta fixa com os canais de emergência (Central de Atendimento à Mulher 180 e
Polícia Militar 190). Isso é arquitetura, não prompt. Instrução em prompt dá para contornar, um
return antes da chamada não.
Arquitetura
O backend é Next.js sobre Supabase, com Postgres, autenticação e Row Level Security. O app é React Native com Expo Router, NativeWind e TanStack Query.
O domínio está em tabelas explícitas: perfis e perfis de relacionamento, conversas e mensagens, fontes e trechos de conteúdo, recomendações e itens salvos.
Toda entrada passa por validação com Zod antes de qualquer processamento, com a mensagem
limitada a 4.000 caracteres. O uso de IA é contabilizado por dia e por usuário em
ai_usage_daily, e o limite é checado antes da chamada. Isso mantém o custo por conta
previsível e serve de defesa contra abuso.
Desafios técnicos
- Manter a IA dentro do escopo. Recuperar a partir de uma base indexada dá controle sobre o que o modelo pode usar como fundamento, mas exige cuidado no corte dos trechos. Pedaço curto demais perde contexto, longo demais dilui a resposta e encarece a requisição.
- Segurança que não depende do modelo. A verificação de risco roda antes da chamada e tem precedência sobre qualquer resposta gerada.
- Custo previsível. Contabilizar uso por dia e por usuário no banco, e checar o limite antes de chamar a API, evita que uma conta sozinha consuma o orçamento inteiro.
Estágio atual
Em desenvolvimento. Landing page e fluxo principal no ar.