João Pedro

Command Palette

Search for a command to run...

Command Palette

Search for a command to run...

Mr Chef's, Site e Atendimento

Detalhes do Projeto

Período:
09.2026 → hoje
  • Client Project
  • React 19
  • Vite
  • GSAP
  • n8n
  • Google Gemini
  • WhatsApp
  • PostgreSQL
  • MapLibre
  • Vercel
Logo de Mr Chef's, Site e Atendimento
Mr Chef's, Site e Atendimento

Impacto em números

Workflows no n8n
20

WhatsApp, chat do site, reservas, cardápio e painel

Comandos da Equipe
41

Respondem na hora e não gastam IA

Testes do Bot
10 arquivos

Abuso, áudio, código, comprovante, mapa e painel

Bot em Silêncio
12 h

Quando alguém da equipe assume a conversa

Sobre o projeto

O Mr Chef's funciona desde 2012 no segundo andar de um casarão na Praça Correa Rabelo, de frente para a Catedral de Diamantina. A reserva era feita por WhatsApp e telefone.

Refiz o site do zero em torno do lugar. A abertura acende o nome junto com a luz do lampião, o hero mostra a Catedral de dia até as 18h e acende a luz depois disso, o aviso de "aberto agora" é calculado no horário de Brasília e, nas noites de Vesperata, o site entra num modo próprio com contagem regressiva. Em "Onde fica", um mapa 3D traça o caminho a pé de onde o visitante está até a porta. Cada funcionalidade mora numa pasta própria e liga ou desliga numa configuração. Com todas desligadas, o site volta à versão sem elas, e eu conferi isso no build e no navegador.

O centro do projeto é o atendimento. Um conjunto de 20 workflows no n8n, com Gemini e Postgres, responde no WhatsApp e no chat do site e faz reserva de verdade: confere se a casa abre naquele dia, a última hora aceita, a antecedência mínima e a lotação da noite. A reserva é mesa por mesa. No site, a pessoa escolhe no mapa do salão e da calçada, e uma mesa não aceita duas reservas que se sobreponham.

Reserva feita pelo site só vale depois que o WhatsApp digitado responde com o código que apareceu na tela. O código prova que é quem pediu, e o número prova que o WhatsApp é dela. Quem não fez o pedido responde NÃO FUI EU e ele cai na hora.

A confirmação leva um comprovante em PDF, gerado dentro do próprio n8n, com a logo e as fontes da casa e um QR que a recepção abre para ver a reserva sempre atualizada. A equipe pede o mapa das mesas e recebe o salão desenhado, com cada mesa na cor do estado e o nome de quem vem. O cliente também pode pedir, mas o mapa dele só mostra o que está livre: sem nome, sem telefone, sem código.

Para a equipe, o WhatsApp da casa é o painel de administração. "Muda o preço do mexidão pra 42", "cadastra o Malbec em Vinhos a 145", uma foto com a legenda #12 ou um áudio dizendo "confirma a reserva da Ana". O áudio é transcrito, a transcrição aparece antes da resposta para a pessoa conferir, e comando com barra responde na hora sem gastar IA.

A decisão que mais importa é quem pode mexer nisso. Um modelo de linguagem obedece texto, e texto qualquer pessoa manda. Por isso ser da equipe é conferido no banco, pelo número da conversa, e não pelo que o modelo concluiu. O modelo não tem como se convencer a dar acesso a ninguém.

O desafio

Juntar IA e reserva de verdade sem deixar o modelo decidir o que não deve. O Gemini conversa, entende e transcreve, mas tudo o que muda estado passa por regra no banco: lotação, sobreposição de mesa, horário de funcionamento e quem é da equipe. O modelo sugere, o banco decide.

O outro desafio foi custo e sossego. IA cobra por resposta, então existe limite diário de gasto e um comando que mostra quanto já foi. Mensagem picada vira uma resposta só. E quando alguém da equipe responde pelo celular da casa, o bot fica 12 horas quieto naquela conversa, para não atropelar o atendimento humano.

Resultados

O atendimento responde na hora, de dia ou de madrugada, e a reserva chega confirmada com comprovante. A equipe mexe no cardápio e nas reservas pelo próprio WhatsApp, sem abrir sistema nenhum, e recebe às 17h o resumo da noite.

Stack técnica

01

React 19 e Vite 6

Site com GSAP, ScrollTrigger e Lenis, e cada funcionalidade isolada numa pasta que liga e desliga.

02

n8n

20 workflows: WhatsApp, chat do site, reservas, cardápio, fotos, comprovante, lembretes e o painel da equipe.

03

Google Gemini

Conversa e transcrição de áudio, com limite diário de gasto e comandos que não passam pela IA.

04

PostgreSQL

Reservas, mesas, cardápio e fotos num schema próprio, com a regra de sobreposição no banco.

05

Evolution API

Conexão com o WhatsApp da casa, para o cliente e para a equipe.

06

MapLibre e OpenStreetMap

Mapa 3D com relevo e rota a pé, com o Google Maps como plano B.

07

Vercel

O site conversa com o n8n pelo próprio domínio, então o endereço do servidor não aparece no JavaScript.

Galeria(2)

Mr Chef's, Site e Atendimento, imagem 1
Mr Chef's, Site e Atendimento, imagem 2