Hugo Hismans
FR

Back to the atlas

Screenshot of Qui a dit ça ? on desktop
Screenshot of Qui a dit ça ? on a phone

HH·026TogetherFinished17 Aug 20268 commits

Qui a dit ça ?

Guess who wrote what in your group chats, without uploading a thing

Drop in the export of a group conversation (WhatsApp, Messenger or Instagram), and the game picks a message and asks who wrote it: three lives, the longest streak you can manage, and a "context" view to reread the surrounding chat. Everything stays in the browser, and you can check it: the page declares a Content-Security-Policy that forbids any outgoing connection, and a build audit blocks deployment if a network primitive shows up. The draw picks the author first and then one of their messages, so that always naming the chattiest person is not a winning strategy.

What shines

  • Privacy enforced by the browser itself: CSP connect-src 'none', plus an automated bundle audit in CI (fetch, XHR, WebSocket, sendBeacon forbidden)
  • Robust parsers: iOS/Android WhatsApp variants, FR/EN/US dates, 12-hour format, and the latin-1 mojibake in Meta exports repaired
  • Archives streamed in a Web Worker without decompressing the media: 50 MB of photos takes only about 1 MB of memory
  • Balanced draw (an author picked uniformly, then one of their messages) and distractors that are always plausible
  • Duplicate identities merged and phone numbers masked everywhere, so you can play while sharing your screen

How to use it

Drop in a conversation export (or click "Try with demo data"), merge the duplicates, then guess who wrote each message

Made with

  • Svelte 5
  • TypeScript
  • Vite
  • Tailwind CSS 4
  • fflate (lecture ZIP en flux)
  • Web Worker
  • Vitest
  • Testing Library
  • GitHub Actions
  • Content-Security-Policy

In the same constellation