Skip to content

Arcade › Snowy Match

Snowy Match

  • 2d
  • puzzle
  • memory
  • casual
  • winter
  • emoji
0
Remix it Discord

0 plays

How to play

Click the game above and it runs right here in your browser. No download, no installer, no account needed. Barkawi Web Dev built it with Cinevva, so it works on a phone or a tablet too.

Discussion

Nobody has said anything about Snowy Match yet. Play it, then tell Barkawi Web Dev what you would add next.

Make your own game

Snowy Match was built by Barkawi Web Dev with the Cinevva game creator: describe the game you want in chat, watch it get built, and play it in your browser minutes later.

Remix Snowy Match opens the real game in the creator and forks its actual files, chat and design doc, so you start from the code rather than from a description.

Read the build brief for Snowy Match

Cinevva's analyzer read this game's design doc and its source, then wrote the brief below. "Make your own" hands it to the game creator as your opening message, so you start from a real spec rather than a one-line idea.

Create a responsive browser memory-card game titled “Snowy Match,” presented as a cozy winter holiday experience. Use a full-viewport background with a soft diagonal gradient from pale sky blue through icy blue to warm cream, plus subtle static white snowflake/snow-dot decorations. Center a translucent white frosted-glass panel with a thick white border, rounded corners, blur effect, and soft blue-gray shadow. The panel should be scrollable if needed and contain a header, scoreboard, card grid, status message, restart button, and small footer.

At the top, show the large dark navy title “Snowy Match,” with the subtitle “Flip two cards and find every cozy winter pair.” Place a berry-red pill badge labeled “WINTER FEST” at the right. Below, show three evenly spaced rounded statistic boxes: MOVES (initially 0), PAIRS (initially 0/6), and TIME (initially 0:00). Use a friendly rounded sans-serif style, pale cream stat backgrounds, and light blue borders.

Implement the actual game as a 4-column by 3-row grid of 12 square-ish cards, containing two copies each of these six winter/holiday emoji icons: 🎁, ☃️, 🧣, 🕯️, 🍪, and 🎄. Randomly shuffle the 12-card deck whenever a new game starts. Cards begin face down. The back is deep blue with a lighter blue gradient, white border, slight dark-blue bottom shadow, and a decorative “✦  ❄  ✦” motif. When clicked or tapped, a card flips with a 3D rotateY animation to reveal a warm off-white front with a gold-tinted border and shadow, displaying its emoji. Allow only two cards to be selected at once: clicking the first starts the timer and reveals it; clicking a second increments MOVES and compares the icons. Matching cards stay face up, get a pale green background and green border/shadow with a small pop animation, and increment PAIRS. Non-matching cards remain visible briefly, then flip back after about 720ms. Prevent additional clicks while the mismatch is resolving or while cards are matched/already flipped.

Display status text below the board. Initially say “Pick a card to begin.” After a mismatch say “Not a pair yet — try another two.” After a match say “A cozy match!” When all six pairs are found, stop the timer and show “All pairs found in [moves] moves — snow much fun!” The timer counts elapsed whole seconds from the first card click and displays mm:ss. Play subtle synthesized triangle-wave blips on card flips and a higher note on successful matches if browser audio is available, but the game must work without audio. Add a gold pill-shaped “New snow day” button that fully resets the deck, moves, pairs, timer, selected cards, lock state, and message when clicked; include the footer text “A tiny original winter card game — made for quick cozy rounds.”

Make the layout responsive: on narrow screens reduce panel padding, title size, card gaps, and card corner radii while retaining the 4-column grid. Cards should be accessible buttons with an appropriate hidden-card label and keyboard focus styling. Expose game state with getGameState(), returning moves, pairs, seconds, formatted time, gameOver, and the shuffled board; also support setGameState({seconds}) for updating the displayed seconds.

More free browser games

Browse the whole Arcade →