Um SaaS completo para casais conduzirem todo o casamento online. Dashboard admin com gestão de RSVPs, lista de presentes integrada com PIX, fluxos de e-mail automáticos no Resend, e um site público para os convidados com quatro temas e quatorze seções configuráveis.

01 / O PROBLEMA
Ferramenta de casamento é fragmentada.
Casais que estão planejando casamento juntam seis ferramentas diferentes: planilha pra lista de convidados, Google Form pra RSVP, lista de presentes em algum marketplace, grupo de WhatsApp pra avisos, site no Wix pra página pública, e papel impresso no dia. Nada conversa com nada.
O escopo: um produto só, que roda o show inteiro. Casal entra, gerencia tudo, entrega uma URL única pros convidados.
02 / A ABORDAGEM
Multi-tenant desde o dia um.
Desenhei como SaaS, não como um produto de um casal. Cada casamento é um tenant com seus owners, editors, convidados, presentes, tema e URL pública. Essa decisão moldou o schema (toda tabela queryável tem `weddingId` como foreign key), o auth (role-based no nível do tenant) e o site público (rotas dinâmicas do Next.js que resolvem por slug para a config publicada do tenant).
Por que esse trabalho a mais pra um produto de um casal só no começo? Porque o segundo cliente é de graça. O dono cria um novo casamento pra um amigo em dois cliques.
03 / A CONSTRUÇÃO
PIX, RSVP por grupo, e o resto.
RSVP por grupo. Cada convidado pertence a um grupo ("família Silva"), e a confirmação de qualquer membro confirma o grupo inteiro. Cada grupo tem seu próprio QR que abre uma página personalizada de confirmação. É como família brasileira de fato funciona — um primo confirma por dez.
PIX como pagamento de primeira classe. Presentes podem ser reservados e pagos via EMV BR Code (QR do PIX). Eu renderizo o QR dinâmico no servidor, entrego um fluxo de um toque pro convidado, e reconcilio via webhook. Sem cerimônia de Stripe.
Temas que não dão pena. Quatro presets completos (Minimalist, Romantic, Rustic, Classic) — cada um com paleta, font stack (Cormorant Garamond, Playfair, Bodoni) e divisores ornamentais. O casal customiza cor e fonte num painel só.
E-mail que você realmente quer ler. Resend cuida dos fluxos transacionais: confirmação, resumo diário pro dono, alertas de prazo. Templates de WhatsApp ficam ao lado do e-mail pra copiar e colar avisos.
04 / RESULTADO
No ar, usado, simples.
O primeiro casal rodou o casamento inteiro por ele — convite, RSVP, lista de presentes por PIX e um e-mail diário que substituiu o ritual da planilha.
O codebase tem cerca de 78 mil linhas em 326 commits, com documentação cobrindo deploy, segurança e roadmap de SaaS. O cron que envia o resumo diário roda às 9 UTC na Vercel — um route handler de nove linhas fazendo o trabalho de um dashboard que ninguém abre.
Linhas de código
~78k
Commits
326
Seções públicas
14
Temas
4
