Overview
A memory game where the aim is to select each Pokémon card only once. The cards shuffle after a successful selection, so their positions cannot be used to track previous choices.
Gameplay and data
The game loads Pokémon data from PokéAPI and waits for card images before showing the board. A new selection increases the score; selecting a previously chosen card ends the round. The interface tracks the current, highest, and previous round scores.
Implementation
React hooks manage the cards, scores, and screen changes. Components separate the game board, individual cards, menu, and game-over screen. The data-loading effect uses an abort controller during cleanup, and Vite supplies the development and build setup.