Skip to content

Play redesign follow-ups: remove dead assets + per-question /play metadata - #54

Merged
acharlop merged 2 commits into
mainfrom
chore/play-redesign-followups
Jun 13, 2026
Merged

acharlop merged 2 commits into
mainfrom
chore/play-redesign-followups

Conversation

@acharlop

Copy link
Copy Markdown
Contributor

Two follow-ups after the play redesign (#41–#44, #46), as separate commits.

1. Remove dead assets — Closes #50

  • Delete the 924 committed LFS card PNGs under public/images/ (~102 MB). Cards are now generated in code (src/server/card-image.ts → /og/{lang}/{id}.png), so these are unreferenced — confirmed no src references.
  • Delete .gitattributes (it only tracked those PNGs).
  • Delete src/components/GameControls/ — only the removed per-question page used it (now a 301 → /play); confirmed zero importers.

2. Per-question metadata on SSR /play

  • Head.astro accepts id/language props (falling back to route params); Layout.astro forwards them.
  • /play?lang=&q= now emits per-question <title> (WhoCards | Question #N), og:locale, and og:image (/og/{lang}/{id}.png) for crawlers — previously only og:image was per-question. No/invalid q → generic title + social.png.
  • Side effect: og:locale is now populated on other pages too (it was empty before) — a small, positive SEO change. Broader audit tracked in Research: site-wide SEO optimizations & polish #52.

pnpm build passes.

acharlop added 2 commits June 13, 2026 21:03
Card images are now generated in code (src/server/card-image.ts -> /og/{lang}/{id}.png),
so the 924 committed LFS PNGs under public/images/ are unreferenced; remove them and
the now-empty .gitattributes (it only tracked those files). GameControls was only used
by the removed per-question page (now a 301 to /play); delete it too.
Head.astro now accepts id/language as props (falling back to route params), so the
SSR /play page can supply the per-question metadata the old static question pages got
from params. /play?lang=&q= -> title 'WhoCards | Question #N', og:locale=lang,
og:image=/og/{lang}/{id}.png; no/invalid q falls back to the generic title + social.png.
@netlify

netlify Bot commented Jun 13, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for whocards-calmly ready!

Name Link
🔨 Latest commit d2358ce
🔍 Latest deploy log https://app.netlify.com/projects/whocards-calmly/deploys/6a2daa54e5f548000862894e
😎 Deploy Preview https://deploy-preview-54--whocards-calmly.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
Lighthouse
Lighthouse
1 paths audited
Performance: 96
Accessibility: 87
Best Practices: 100
SEO: 100
PWA: -
View the detailed breakdown and full score reports

To edit notification comments on pull requests, go to your Netlify project configuration.

@acharlop
acharlop merged commit 4f359c5 into main Jun 13, 2026
6 checks passed
@acharlop
acharlop deleted the chore/play-redesign-followups branch June 13, 2026 19:11
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.

Remove dead assets from play redesign: 924 LFS card PNGs + orphaned GameControls

1 participant