Mensageria
Central de trabalho de uma equipe que atende muitas clínicas pelo WhatsApp: conversas, jornada de cada cliente, tarefas e agenda em um lugar só.

O problema
A equipe acompanhava dezenas de grupos direto no aplicativo de mensagens. Pedido se perdia no meio da conversa, ninguém sabia em que fase cada clínica estava, e o combinado de uma reunião ficava só na memória de quem participou.
O resultado
Cada clínica tem um grupo, e a Mensageria junta em um lugar só as conversas, a jornada de cada cliente, as tarefas, a agenda e as informações da conta.
- Conversas: todos os grupos e contatos da equipe, em tempo real, com filtros e etiquetas.
- Quadro: a jornada de cada clínica, da implantação ao acompanhamento.
- Tarefas: o que foi combinado vira tarefa, ligada ao grupo de onde saiu.
- Agenda: reuniões, prazos e mensagens agendadas na mesma grade, sincronizada com o Google Agenda.
- Assistente de IA: lê as conversas e as tarefas, responde perguntas e propõe ações, que só acontecem depois de confirmadas por uma pessoa.
- Cofre de senhas cifrado, planilha de clientes com colunas criadas pela equipe e mensagens prontas com atalho.
- Aplicativo instalável (PWA), com avisos no celular e tema claro ou escuro.
Como foi construído
Um app Next.js e um processo de tarefas em segundo plano, do mesmo código.
- Clean Architecture por módulo: domínio puro, casos de uso e adaptadores, com a regra de dependência verificada automaticamente.
- Provedor de mensagens trocável: a ligação com o WhatsApp fica atrás de uma porta, e mais de um provedor atende o mesmo canal.
- API documentada: mais de 240 operações com contrato OpenAPI, as mesmas que a tela e a assistente usam.
- Decisões registradas em registros de decisão de arquitetura (ADRs).
Stack por camada
- Telas: Next.js 16, React 19, Tailwind 4, TanStack Query, dnd-kit
- API: Hono, zod, OpenAPI 3.1
- Dados: PostgreSQL, Drizzle, pg-boss
- Avisos: Web Push, PWA
- Qualidade: TypeScript, Vitest, ESLint, dependency-cruiser
- Entrega: Docker, nginx, VPS
Telas
Os dados que aparecem nas telas são fictícios.
(abre a imagem inteira em outra aba)Quadro das clínicas: cada coluna é uma fase da jornada. O card mostra a última mensagem, as etiquetas e quanto tempo o grupo espera resposta.
(abre a imagem inteira em outra aba)Tarefas da equipe, com prioridade, prazo, responsável e o vínculo com o grupo de onde saíram.
(abre a imagem inteira em outra aba)Agenda: reuniões com as clínicas, prazos de tarefas e envios agendados, em mês, semana, dia ou lista.
(abre a imagem inteira em outra aba)Uma mensagem pode sair na hora marcada, para um ou vários grupos, uma vez ou com repetição.
(abre a imagem inteira em outra aba)Mapa de como os sistemas da equipe se ligam, ao lado do roadmap, dos objetivos e da caixa de ideias.
(abre a imagem inteira em outra aba)Conversas no tema escuro.