Sushi Typing: a typing practice game with 60/90/120-second courses and a leaderboard that cannot be faked
Sushi Typing is a typing game where sushi plates roll by and you type their names in romaji. It started as a ten-second sprint; it now has proper 60, 90 and 120-second courses, 76 prompts including short phrases, accuracy and speed (characters per minute), a list of the keys you miss most, and a leaderboard per course and period.

The leaderboard does not trust the browser
Any browser game can be "beaten" by editing the request that submits the score. So the server never receives a score. Instead:
- The server issues a seed for your session in a signed token.
- Your browser and the server generate the same sequence of prompts from that seed.
- You send a log of answers: which prompt, at what millisecond, what you typed.
- The server replays the log against its own sequence, checks every answer, and computes the score itself.
On top of that it rejects anything faster than a human: under 40 ms per character, over 1,100 characters per minute overall (world-class typists reach 700 to 900), or a first answer before 120 ms. A token can be used once, expires in 20 minutes, and a submission that arrives before the course could have ended is rejected as fast-forwarded. A bot check (Turnstile) and a per-address rate limit sit in front of all of that.
What it cannot stop is a bot that types at a plausible human speed. No typing game can. I would rather be clear about that than pretend.
Romaji is forgiving
"Salmon" in Japanese is サーモン; people type it as saamon or samon, and the IME habit of typing nn for ん shows up everywhere. The game normalizes these before checking, so a correct word is not marked wrong because of a spelling convention.
👉 Sushi Typing — English and Japanese.
Comments
Post a Comment