
Sistema para Oficina Mecânica
Cliente real, em produção. A oficina, em Irajá (RJ), não aparecia nas pesquisas e não tinha registro centralizado dos veículos. Fiz sozinho, do levantamento com o dono ao deploy: site com domínio próprio, páginas por serviço e SEO local verificado no Google Search Console, e gestão de ordens de serviço, clientes e veículos com Row Level Security, testes e CI.
Ver arquitetura e pontos de engenharia
Pontos de engenharia
- SegurançaWebhook do WhatsApp validado por HMAC, com deduplicação, porque a Meta reenvia webhooks.
- SegurançaRLS ligado em todas as tabelas da gestão, com um teste que falha se uma tabela nova for criada sem RLS; sessão em cookie httpOnly.
- DadosTotal da ordem calculado no servidor, exclusão lógica para preservar o histórico financeiro e faturamento no fuso America/Sao_Paulo.
- TestesRegras de status, totais, períodos, CSV e RLS cobertas por testes com node:test, rodando no CI.
- ProdutoExportação CSV pensada para o Excel em português, com proteção contra CSV injection.
Fluxo do sistema
Entrada
Google · Instagram · Site Next.js 15
O cliente chega pelo Google ou Instagram e começa o pedido pelo site.
WhatsApp
WhatsApp Cloud API · Webhook
Assinatura HMAC (X-Hub-Signature-256) com comparação timing-safe e deduplicação de mensagens reenviadas.
Fluxo do bot
Máquina de estados · Redis (Upstash)
Perguntas objetivas sobre veículo, ano, serviço e foto. A regra é uma função pura, coberta por testes.
Gestão
Route Handlers · bcrypt · JWT em cookie httpOnly
Ordens de serviço, clientes, veículos e dashboard, com login próprio.
Dados
PostgreSQL (Supabase) · RLS · Migrations
RLS em todas as tabelas da gestão. Um teste falha se uma tabela nova for criada sem RLS.
Entrega
Vercel · GitHub Actions
O CI roda checagem de tipos, lint, testes e build a cada push.













