CRM Next.
Funil de vendas em kanban, com automações que a equipe desenha sem escrever código.


O problema
Processo manual · Sistemas isolados
Uma equipe comercial pequena vive de follow-up: retornar a ligação, mandar a proposta, mover o card. Quando isso depende de alguém lembrar, a oportunidade esfria. E um CRM que não troca dados com os outros sistemas da empresa vira mais um lugar para digitar a mesma coisa duas vezes.
O que construí
Construí o backend em NestJS e o front em Next. Os quadros têm etapas com checklist, histórico e bloqueio de avanço sequencial, para ninguém pular etapa. Tem leads, contatos, empresas, agenda e atividades, editor visual de workflows, webhooks de entrada e saída, cobrança pela Stripe, gamificação com XP, badges e metas, e audit log. O acesso passa por guards de JWT, tenant e permissão, com papéis por quadro.
Decisões técnicas
01Workflows processados em fila
O motor tem 13 estratégias de nó, uma para cada tipo de bloco do editor, e as execuções são processadas numa fila BullMQ. Um workflow lento ou com erro não trava a requisição que o disparou, e um tipo de nó novo é só mais um arquivo de estratégia.
Onde está no código: backend/src/workflows/engine/*.strategy.ts
02Webhooks nos dois sentidos
Os webhooks de saída vão assinados com HMAC-SHA256, e quem recebe consegue conferir que vieram do CRM e não foram alterados. O de entrada dispara um workflow: um sistema de fora manda o lead e a automação segue sozinha, sem ninguém digitar nada.
03Cobrança pela Stripe, com webhook verificado
Checkout e portal do cliente rodam na Stripe, e o webhook que avisa o CRM tem a assinatura verificada antes de qualquer mudança. Dado de cartão fica do lado da Stripe.
Números
26
models Prisma
19
módulos NestJS
18
páginas
Stack
- NestJS 11
- Prisma
- BullMQ
- Stripe
- Next.js 16
- React 19
- React Flow
- dnd-kit
- React Hook Form
- Zod
- Recharts
- PostgreSQL
- Redis
Telas



Task Gaming