Skip to content
Landry Simo

Mobile app · 2026 · Solo project

Secret

Group messenger built around the party games friends already play, with the app as game master.

automated tests, including anonymity-leak tests
9,000+
from design to release, solo
4 weeks
built-in games, from Werewolf to a real-time arena
30+
Secret launch visual: “Your WhatsApp group games finally have their app”, the list of games (Hot Seat, Truth or Dare, Werewolf, Undercover, Secret Crush…) and the app screen on a phone

01Problem

Party games between teenagers and young adults depend on an admin who relays questions, keeps score, and can see who said what — which kills both anonymity and momentum.

02Solution

A Flutter app on top of a Django game engine where every game is a pluggable handler with pure-function rules, a separate pure-Dart real-time server for action games, and self-hosted LiveKit voice rooms during matches.

03My role

  • Solo design, architecture, and development across mobile, web, backend, and real-time server
  • Server-authoritative game engine: pluggable handlers, pure-function rules verified by 10,000-game self-play runs
  • Real-time Dart arena validated byte-for-byte against an independent Python reference implementation
  • Spec-driven delivery (spec → plan → tasks → implementation) with API contracts written before code
  • Docker and Dokploy deployment, FCM and Web Push, Google Play release

04Impact

  • Published on Google Play Store — verifiable via Play Store link
  • 9,000+ automated tests (≈3,700 backend, ≈5,900 Dart), including anonymity-leak tests
  • Designed, built, and shipped solo in about four weeks (733 commits)

05Key features

  • 30+ games: Hot Seat, Truth or Dare, Werewolf, Undercover, Secret Crush, Quiz (≈6,000 questions), Photo Puzzle, Checkers, Snakes, Ludo, a Bomberman-style arena game, and auto racing
  • Full messaging: sticker studio, voice messages, view-once media, replies and mentions, push notifications
  • Live voice rooms during games, powered by self-hosted LiveKit
  • Anonymous by design: the server never serializes a submission's author or hidden information (card hands, roles)
  • Real-time arena: separate Dart game server, binary protocol, client-side prediction with a clock-synced client
  • Security and moderation: content filter, view-once media never written to disk, single-use tokens, SSRF-protected outbound requests, audited moderator access
  • Bilingual interface (French and English) on Android and web

06Stack

  • Flutter
  • Dart
  • Flame
  • Django
  • Channels
  • Celery
  • PostgreSQL
  • Redis
  • LiveKit
  • Docker