Skip to content

feat(profile): achievements strip and Google badge - #37

Merged
prodelt merged 1 commit into
mainfrom
feat/profile-upgrade
Oct 5, 2026
Merged

prodelt merged 1 commit into
mainfrom
feat/profile-upgrade

Conversation

@prodelt

@prodelt prodelt commented Oct 5, 2026

Copy link
Copy Markdown
Owner

Makes the profile feel more like a game profile.

  • New Achievements strip (uk + en): seven badges derived from local progress the app already keeps: first run, first test, ten keys opened, 200 cpm in a test, 7-day streak, an Academy module cleared, first race. Earned badges are inked, locked ones dimmed; every badge is focusable and shows a how-to-earn hint via the shared .tip tooltip (aria-describedby, same pattern as Stat).
  • A Google tag next to the nick for a Google-signed-in player.
  • Pure badges() fold in features/profile/model.ts with unit tests.

Not done (time): Google avatar (would need the avatar URL plumbed through auth and img-src in the CSP), member-since date, the empty-profile single-CTA stats row.

Checks: web tsc, biome on touched files, profile unit tests, pnpm build (initial JS 147.1 KB gzip). Looked at /profile as a guest on desktop.

🤖 Generated with Claude Code

Seven badges read off progress the app already keeps (first run, first
test, ten keys, 200 cpm, 7-day streak, an Academy module, first race).
Locked badges are dimmed and explain how to earn them in a focusable
hover hint; a Google-signed-in player gets a Google tag next to the nick.

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

vercel Bot commented Oct 5, 2026 •

Copy link
Copy Markdown

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

Project Deployment Actions Updated
typing-race Ready Ready Preview Oct 5, 2026 8:45pm UTC

@prodelt
prodelt merged commit 8b47e38 into main Oct 5, 2026
2 of 6 checks passed

This branch was successfully deployed

1 active deployment
Preview — 68afbf71 Deployed Oct 5, 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