Skip to content

Add IGDB as the second catalogue - #3

Merged
mrWD merged 1 commit into
mainfrom
igdb-second-catalogue
Aug 12, 2026
Merged

mrWD merged 1 commit into
mainfrom
igdb-second-catalogue

Conversation

@mrWD

@mrWD mrWD commented Aug 12, 2026

Copy link
Copy Markdown
Owner

RAWG's outage left console games unfindable, and no keyless source can replace it: cover art is copyrighted, so the free catalogues have the titles and not the pictures (measurements in docs/DATA-SOURCES.md). IGDB has both.

  • proxy gains an igdb branch — Twitch client-credentials token cached per warm instance, GET translated to IGDB's POST-with-text-body
  • search order becomes RAWG → IGDB → Steam; Steam returns nothing for zelda or mario, which is the point
  • discover falls the same way before reaching Steam's storefront
  • missing credentials answer 503, the contract RAWG already used

Verification against the live API happens on this preview deploy, where the credentials are.

🤖 Generated with Claude Code

RAWG going down left console games unfindable, and the measurements in
DATA-SOURCES showed why nothing keyless could rescue them: cover art is
copyrighted, so the free sources have the titles and not the pictures.
IGDB has both, at the cost of a second credential.

The proxy gains an igdb branch. It authenticates through Twitch with a
client-credentials token cached in module scope, and translates the
client's ordinary GET into the POST-with-a-text-body that IGDB's query
language requires — so none of that protocol reaches the browser. The
search term is quoted into a string literal and the only two query
shapes are search and the discover orderings, so a client cannot inject
clauses. Missing credentials answer 503, the same contract RAWG already
had: 'not configured here', not an outage.

In the client IGDB sits between RAWG and Steam, and the order is the
whole point — Steam returns nothing at all for 'zelda' or 'mario'.

Not yet verified against the live API: that needs the preview deploy,
where the credentials live. Numbers to follow.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@vercel

vercel Bot commented Aug 12, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
games-table Ready Ready Preview Aug 12, 2026 10:37am

@mrWD

mrWD commented Aug 12, 2026

Copy link
Copy Markdown
Owner Author

Preview deploy is behind Vercel's deployment protection (302 to SSO), so the live IGDB check has to happen either locally with credentials in .env.local, or on production after merge. Code is complete and builds clean; numbers still pending.

@mrWD
mrWD merged commit ee64c2d into main Aug 12, 2026
3 checks passed
@mrWD
mrWD deleted the igdb-second-catalogue branch August 12, 2026 11:12

This branch was successfully deployed

1 active deployment
Preview — 62407ccd Deployed Aug 12, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant