Beginner · 2–4 hours
Beach memory match
Flip cards, find pairs, beat your best time. Friendly portfolio piece and kids-at-the-BBQ energy.
Milestones
- Shuffle and render grid
- Flip / match / lock logic
- Timer + move count + win modal
- Best time in localStorage
Starter prompt
Brief Make a beach-themed memory match game with emoji or simple SVG icons (no copyrighted characters). Grid 4×3 or 4×4, flip two cards, count moves and time, win modal, play again, best time saved. Keyboard accessible card buttons. Vanilla JS.
Constraints Keep scope finishable. Document env vars. No secrets in client code. Prefer accessible UI. List assumptions at the end.
Hardening notes
- Prevent triple-flip bugs while animations run
- Respect prefers-reduced-motion if you animate flips
Full checklist: Production reality & hardening.