
TryMe
2026, Sole developer, trymegame.app
An iOS truth-or-dare game and group chat for friend groups. Dares are proven with photo or video.
The game
One member of a group writes a truth and a dare, the target picks blind and proves the dare with a photo or video. Weekly challenges keep groups coming back.
What I built
- Offline-first client. Synced data persists in SQLite on the phone. Writes reconcile by Postgres transaction ID, and a sync epoch handles app restarts cleanly.
- Safe sync proxy. Only allow-listed tables and columns sync, clients cannot send their own filters, and cache headers are rewritten so one user’s rows never land in a shared cache.
- Migration off Supabase. Moved the whole backend to self-hosted Postgres, Electric, tRPC and better-auth on a VPS, then cut over live users.
- Media pipeline. Uploads go straight to R2 with presigned URLs and dare media is only ever served through signed links.
- Marketing sites. trymegame.app and DareDB, the public catalogue of prompts behind the game, both in Astro.
Built with Expo, Electric SQL.

