telos
All projects

01 · Live · 2025

Casamento Completo

Open the demo

A full SaaS for couples to run their entire wedding online. Admin dashboard with RSVP management, gift registry tied to PIX payments, automated email flows on Resend, and a public guest-facing site with four themes and fourteen configurable sections.

casamento-completo
Casamento Completo

LIVE DEMO

See the real product in action

01 / THE PROBLEM

Wedding tooling is fragmented.

Couples planning a wedding stitch together six different tools: a guest-list spreadsheet, a Google Form for RSVPs, a separate gift registry on a marketplace, WhatsApp groups for updates, a Wix site for the public page, and a printout for day-of. Nothing talks to anything else.

The brief: one product that runs the whole show. Couples log in, manage everything, hand a single URL to guests.

02 / THE APPROACH

Multi-tenant from day one.

I designed it as a SaaS, not a one-off. Each wedding is a tenant with its own owners, editors, guests, gifts, theme, and public URL. That decision shaped the schema (every queryable table has a `weddingId` foreign key), auth (role-based at the tenant level), and the public site (Next.js dynamic routes resolving by slug to a tenant's published config).

Why bother for what was a single-couple project at first? Because the second customer is free. The owner can spin up a new wedding for a friend in two clicks.

03 / THE BUILD

PIX, group RSVPs, and the rest.

Group-based RSVPs. A guest record belongs to a group ("the Silva family"), and any group member's confirmation marks the whole group. Each group gets its own QR code that opens a personalized confirmation page. This is how Brazilian families actually behave — one cousin RSVPs for ten people.

PIX as a first-class payment. Gifts can be claimed and paid via a generated EMV BR Code (PIX QR). I render the dynamic QR server-side, hand the guest a one-tap mobile flow, and reconcile via webhook. No Stripe ceremony.

Themes that don't suck. Four full theme presets (Minimalist, Romantic, Rustic, Classic) — each with its own color palette, font stack (Cormorant Garamond, Playfair, Bodoni), and ornamental dividers. Couples customize colors and fonts from a single panel.

Mail you actually want. Resend powers transactional flows: confirmation receipts, daily owner summaries, deadline alerts. WhatsApp templates live alongside email so couples can copy-paste announcements.

04 / OUTCOME

Live, used, kept simple.

The first couple ran their wedding on it end to end — invitations, RSVP, gift registry by PIX, and a daily summary email that replaced the spreadsheet ritual.

The codebase is around 78k lines across 326 commits, with documentation covering deploy, security, and the SaaS roadmap. The cron job that sends daily summaries runs at 9 UTC on Vercel — a nine-line route handler doing the work of a dashboard nobody opens.

  • Lines of code

    ~78k

  • Commits

    326

  • Public sections

    14

  • Themes

    4