Simple for the guest, exacting underneath
PartyRSVP is built around the least technical person invited to the party. There is no app to install and no account to create. A host builds one invitation page, shares a single link, and every guest just replies. That simplicity is the product. Making it reliable is the engineering.

Never text a parent twice
The messaging system assumes the worst: a serverless function can die halfway through a send. So sending each message once is enforced by the database, not by in-memory bookkeeping that does not survive across instances. Every email and text claims a unique key before it goes out, and guests who share a parent's email or phone are collapsed into a single family send. The daily reminder sweep is time-boxed and fully idempotent, so if a run is cut short, the next one heals the gap. No duplicate invitations, no double reminders to a busy parent.
Guests without accounts
Because guests never sign up, the app recognizes returning visitors with hashed device tokens. Anyone can add photos and video to the party album through server-issued upload links, with size and file-type limits enforced by storage itself rather than trusted to the browser.
More than a yes or no
Past the RSVP, an event becomes a small private space: a live headcount and guest list, a party chat, a moderated photo and video album, and calendar export. Host briefings summarize the replies, and the summary only calls the AI model when the underlying numbers actually change. All the counting happens in code, so the model only puts it into words.
Under the hood
TanStack Start on React 19, Supabase for data, storage, and auth, email through Resend and SMS through Telnyx with signed-webhook verification for STOP and START compliance, and share images generated on the fly. Deployed on Vercel.