GOTCHA!
Gotcha!.cartGAME
Gotcha! on iPhone: a big GOTCHA! burst, 'Dev got you!', +100 points
GOTCHA! · DEV GOT YOU
PostcardGotcha! · Live on the web · iOS and Android builds ready

Real-time party game · 4 clients

Gotcha!

A real-time bluffing trivia party game. Write fake answers to real questions, fool your friends, find the truth.

Live on the web · iOS and Android builds ready

When
Oct 2026
My part
Solo: game design, backend, web, Android and iOS apps, ops
PostcardGotcha! · Live on the web · iOS and Android builds ready
Next stop: Research ↓
Players per room
3 – 12
Clients
Web · iOS · Android
Code
~39.5k lines
Spec to live web
4 days
Python + FastAPIWebSocketsRedisMongoDBReact 19 + TypeScriptKotlin + Jetpack ComposeSwift + SwiftUIDocker + CaddyGemini API
01_Research20 OCT 2026

Chapter 1 of 6 ·

Read every review first

Before any code: a research doc on what players of bluffing games love and hate, built from store reviews and screenshots, then a written spec for the rules, the screens and the protocol.

Original name, art, question decks, stickers and sounds. The mechanics are the classic party-bluffing ones.

PostcardResearch · 1 of 6
Next stop: Protocol ↓
gotchaparty.com: LIE TO YOUR FRIENDS. (NICELY.)
GOTCHAPARTY.COM
PostcardResearch · 1 of 6
02_Protocol21 OCT 2026

Chapter 2 of 6 ·

One protocol, four clients

A single written protocol drives a React web client, a Kotlin Android app and a SwiftUI iOS app, all talking WebSockets to one FastAPI server.

Live rooms survive a server restart: room state is snapshotted to Redis, so a deploy mid-game doesn't end the party.

$ git log feat: add TypeScript types and configuration for web application

PostcardProtocol · 2 of 6
Next stop: Offline ↓
iOS lobby with a room code ticket and the player list
LOBBY
Writing a fake answer to a trivia question
WRITE A LIE
PostcardProtocol · 2 of 6
03_OfflineCH 3

Chapter 3 of 6

No Wi-Fi? The host's phone becomes the server

On Android the host phone runs the game server itself. Guests find it on the local network over mDNS, and anyone without the app joins from a browser served straight out of the APK.

PostcardOffline · 3 of 6
Next stop: Production ↓
Android offline lobby hosted on the phone
OFFLINE HOST
Reveal screen showing who wrote which answer
THE REVEAL
PostcardOffline · 3 of 6
04_Production21 OCT 2026

Chapter 4 of 6 ·

Boring ops, on purpose

The game is a toy. The ops behind it aren't.

PostcardProduction · 4 of 6
Next stop: Safety ↓
PostcardProduction · 4 of 6
05_Safety23 OCT 2026

Chapter 5 of 6 ·

Reports, feedback and the finishing touches

Player reports, feedback, "help me lie" hints, floating reactions, spectating, a final podium and awards. A custom sticker and sound library is exported to every client from one script.

$ git log feat: add support for reporting and feedback features

PostcardSafety · 5 of 6
Next stop: Live ↓
Final podium with the top three players
FINAL PODIUM
PostcardSafety · 5 of 6
06_LiveCH 6

Chapter 6 of 6

Live on the web, apps in the wings

gotchaparty.com is live with a waitlist and a playable demo. The iOS and Android builds run and are heading to the stores.

PostcardLive · 6 of 6
Next stop: Manasa ↓
PostcardLive · 6 of 6
Continue?NEXT
Manasa home page: Online First Trauma Therapy Ecosystem

Next cartridge

Manasa

An online-first trauma therapy platform: booking, care packages, video sessions and dashboards for patients, therapists and admins.

Enjoyed Gotcha!? It's free. Buy me a chai and the next one gets made faster.