The Fitness App
Working title · coming soon
In development
Track your training and food — and actually learn from it.
Read about the project
Work a shift as a credit-card fraud analyst.
Free to play in the browser · Hebrew interface · sound recommended
Fraud Watch drops you into the chair of a fraud detection analyst. Each shift, transaction files land on your desk one after another: a card reported stolen, a purchase from an unfamiliar country, a device the customer has never used, an amount that doesn't fit their history. You work against a shrinking timer — tuned by the pace you choose — to read the signals, combine them into a single risk score, and make the call.
The game grew out of my interest in cybersecurity — and out of my time working card authorizations and blocks, where I saw these decisions from the operational side. Fraud detection is usually explained with math and models, but at its core it's a judgment problem: many weak signals, limited time, and a real cost to both kinds of mistakes. Blocking a legitimate customer is a failure too. I wanted a way to feel that trade-off, not just read about it, so I built one. Not long after, the subject became my day job — I now work in fraud risk operations at a credit-card company.
I built Fraud Watch together with Claude, Anthropic's AI assistant, which I used as a pair programmer throughout. The result is a static page with its own soundtrack, a guided five-minute tutorial that teaches how analysts weigh risk, escalating difficulty with boss cases, a daily challenge mode, and an end-of-shift report that exports your mistakes to PDF so you can study them.
The interface is in Hebrew, and the whole game runs in the browser with no installation, no account, and no data collected.
Every case file carries real fraud indicators — stolen-card reports, foreign locations, device history, customer profile — that you combine into one decision under time pressure.
A five-minute guided mode teaches how analysts actually weigh signals before the timer starts working against you.
Every shift ends with accuracy stats, streak records, and a PDF export of the cases you got wrong.
Fraud Watch was built openly with Claude, and everything it ships is static files — no server, no build step. These are a few of the engineering decisions you can see in the shipped code.
Each music loop is an MP3 that is fetched and decoded only when it is actually about to play, so memory holds one decoded track instead of the whole soundtrack. Track changes run through a short crossfade on a shared Web Audio bus, and failed downloads are remembered so the game never retry-loops.
Every sound effect is generated procedurally with Web Audio oscillators — the game ships zero SFX files. The same synth doubles as fallback music: it starts instantly and covers the gap while a real track is still downloading, or replaces it entirely if the file never arrives.
The game declares its own Content-Security-Policy in a meta tag: scripts run only from its own origin plus one named CDN, and plugins are blocked outright. On a static host with no server configuration, that is the tightest policy a page can give itself.
A service worker precaches the core game on install — each file independently, so one missing asset cannot silently kill offline mode — and caches music on first play. The exception is the PDF shift report: jsPDF and html2canvas load from a CDN only when you ask for one, which keeps them out of the initial load but makes that one feature online-only.
A browser game that simulates the work of a credit-card fraud analyst. Transaction files appear one at a time, each with a set of risk signals, and you decide whether to approve or block before the timer runs out.
No. The game includes a guided five-minute tutorial that explains how the risk signals work and how to combine them. After that, the difficulty ramps up gradually.
I built it with Claude as an AI pair programmer. The entire game — logic, interface, a Web Audio engine, and PDF reporting — is a static page with no framework and no server. The core game keeps working offline thanks to a service worker; PDF export needs a connection, and falls back to a plain-text report without one.
The game interface is currently in Hebrew. An English version may follow, along with this site's Hebrew version.
Working title · coming soon
In development
Track your training and food — and actually learn from it.
Read about the project
The queue is waiting. See how many fraudulent transactions get past you.