Answers never reach the browser
A round in progress only carries a silhouette with an opaque file name and a masked name. Answer keys live in a private schema.
A Pokédex for the original 151, a silhouette quiz styled like a Game Boy battle, and a sticker album you fill by getting answers right.

In 2023 I built a Pokédex as a JSP team project. This is a solo rebuild on a current stack — mostly for fun, and to see how far a small app can be polished.
You can play as a guest with no sign-up. Link a Google account later and your stickers and scores stay with you.




A round in progress only carries a silhouette with an opaque file name and a masked name. Answer keys live in a private schema.
Rules are plain TypeScript. Score, sticker and the next question are written by one Postgres function, so a double submit can't pay out twice.
Answers took 1.6–2.5 s: functions ran in Washington, the database in Tokyo. Moving functions to Tokyo and cutting round trips from 8 to 3 got it to ~0.25 s.
Pokémon and related names and artwork are © Nintendo, Creatures Inc. and GAME FREAK inc. A non-commercial fan project.