Skip to content

MTG design system, bigger cards, onboarding overhaul, and reliability improvements#7

Merged
fuzmaster merged 4 commits into
mainfrom
claude/adoring-sammet-00c071
May 31, 2026
Merged

MTG design system, bigger cards, onboarding overhaul, and reliability improvements#7
fuzmaster merged 4 commits into
mainfrom
claude/adoring-sammet-00c071

Conversation

@fuzmaster

Copy link
Copy Markdown
Owner

Summary

  • MTG-themed design system — Cinzel display font for logo, authentic card-frame gold (#c9a84c) replacing flat yellow, gold focus rings, glow effects on interactive buttons, mana-color-coded card highlights (green = playable land, blue = castable spell)
  • Bigger card images — switched CardGrid and Goldfish zone grids from fixed column counts (7–8 narrow cols) to auto-fill minmax(150px, 1fr), growing cards from ~105px to ~160px wide on desktop
  • Onboarding overhaul — prominent "Try demo deck →" CTA when textarea is empty, desktop two-column layout on the input panel (form + feature description sidebar), Goldfish idle state now explains the mode instead of just gating access
  • Phase 1 reliabilityfetchCards now shows live progress (Fetching cards… X/Y) via the existing onProgress callback; notFound warning truncated to 3 + "+N more"; status message cleared on successful load
  • Footer — new Footer component with var(--bg-root) background, privacy note, and utility links (bug report, donate, GitHub)
  • SEO — expanded meta description, keywords, Twitter card, robots index/follow
  • README rewrite — reflects actual Next.js 15 + TypeScript stack (old README still described vanilla JS)
  • GitHub topics — set 10 repo tags: mtg, magic-the-gathering, deck-tester, nextjs, typescript, react, scryfall, card-game, goldfish, commander

What a reviewer should know

All changes are CSS/component-level — no changes to game logic (engine.ts, metrics.ts, race.ts, goldfish.ts) or data fetching contracts. TypeScript passes cleanly with zero errors. The auto-fill card grid is fully backward compatible — on narrower containers cards just wrap to the next row rather than becoming tiny slivers.

The onProgress wiring in useHandTest.ts uses the existing callback signature in scryfall.ts that was never connected.

🤖 Generated with Claude Code

fuzmaster and others added 3 commits May 4, 2026 22:44
…improvements

Design system:
- Replace flat gold (#e8b836) with MTG card-frame amber (#c9a84c / #e2c468)
- Add Cinzel display font (Beleren-adjacent) for logo via next/font
- Gold focus rings across the app (was purple)
- Glow vars: --glow-gold, --glow-keep, --glow-mull used on interactive elements
- MTG mana palette tokens (--mana-white/blue/black/red/green)
- Header gets 2px gold top border + gold active tab underline
- Card slot highlights use mana-green (playable) and mana-blue (castable)
- Keep/Mulligan/New Hand buttons glow with their semantic colors on hover

Onboarding (Phase 2):
- Quick-start CTA in DeckInput when textarea is empty ("Try demo deck →")
- Visible label added to random deck type selector
- Desktop input panel is now two-column: form + feature description sidebar
- Goldfish idle state now explains the mode instead of just gating access
- Removed ghost demoBtn; demo flow consolidated into DeckInput

Reliability (Phase 1):
- fetchCards onProgress wired: shows "Fetching cards… X/Y" during Scryfall fetch
- notFound warning truncated to 3 + "+N more" (was unlimited join)
- Status message cleared on successful load (was left at last progress state)
- Fallback warning more actionable: clarifies simulation still works

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Switch CardGrid and Goldfish zone grid from fixed column counts to
auto-fill minmax, increasing card width from ~105px to ~160px on desktop.

Cards now scale naturally with container width rather than being
divided into too many narrow columns.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Footer:
- Add Footer component with bg-root background, gold hover links
- Privacy note, bug report, donate, and GitHub links
- Sticky to bottom via flex column body layout

SEO:
- Expand meta description with mobile + no-account callouts
- Add keywords array (MTG, Commander, goldfish, deck tester, Scryfall)
- Add Twitter card metadata
- Add robots index/follow

README:
- Rewrite to reflect Next.js 15 + React 19 + TypeScript stack
  (was describing the old vanilla JS version)
- Add correct setup instructions (npm run dev, not static server)
- Add project layout, import methods, reliability, and privacy sections
- Link to live site

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@vercel

vercel Bot commented May 31, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated (UTC)
keep7 Ready Ready Preview, Comment May 31, 2026 2:40am
keep7-i24b Ready Ready Preview, Comment May 31, 2026 2:40am

@fuzmaster

Copy link
Copy Markdown
Owner Author

@copilot resolve the merge conflicts in this pull request

@fuzmaster

Copy link
Copy Markdown
Owner Author

@copilot resolve the merge conflicts in this pull request

Copilot AI commented May 31, 2026

Copy link
Copy Markdown
Contributor

@copilot resolve the merge conflicts in this pull request

Merge conflicts are resolved in commit 7a1f2c9.

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.

2 participants