The Pokémon TCG API is deprecated (no new keys, existing keys end 2027-03-01)
and was returning 5xx errors. TCGdex is free and needs no API key.
- src/lib/api.ts: fetch the card list, then each card and set, with retries
and limited concurrency; map to the existing TcgCard shape. Pokémon TCG
Pocket cards are skipped.
- Keep the old card IDs for the 10 cards whose TCGdex ID differs, so saved
checklists stay valid (verified by name, set and number).
- Fall back to the old image host for cards TCGdex has no scan for, and to a
placeholder if an image fails to load.
- route.ts: serve the last cached data (marked stale) when a refresh fails;
drop the API key handling.
- Remove the API key variables from compose and the env example; update README.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>