The Stack Snap Display app (app/stack-snap) recreates a classic color-matching card game for RCWeb. The shared screen keeps the full match state, shows the draw and discard stacks, and lets players join instantly by scanning a QR code into the companion phone controller.
stack-snap-control with the current room preselected.Open stack-snap on a shared screen such as a TV, projector, or laptop. Players join by scanning the QR code shown on the display, which opens the stack-snap-control companion app on their phone. The game supports 2 – 8 players and starts when any player taps Start on their phone once at least two players are connected.
Each player is dealt 7 cards. A card is turned face-up from the draw pile to start the discard stack. Play proceeds clockwise from the dealer. On your turn you may:
| Card | Effect | |---|---| | Skip | The next player loses their turn. | | Reverse | Play direction flips. In a 2-player game it acts like a skip. | | Draw Two | The next player draws 2 cards and loses their turn. | | Wild | You choose the new color. Can be played on any card. | | Wild Draw Four | You choose the new color and the next player draws 4 cards and is skipped. Can only be played when you have no cards matching the current color. |
After playing a wild or wild draw four, a color picker appears on your phone — tap your chosen color to continue play.
When a player plays their last card they win the round and score the total point value of every card remaining in all opponents' hands:
| Card type | Points | |---|---| | Number cards | Face value (0 – 9) | | Skip, Reverse, Draw Two | 20 each | | Wild, Wild Draw Four | 50 each |
The first player to reach 500 points across multiple rounds wins the match. After a round ends, a new round is automatically dealt after a short countdown. After a match is won, scores reset and a fresh game begins.
script.js builds and shuffles the deck, deals hands, resolves card actions, and computes round scoring.stack-snap-control client containing that player's hand and the current public table state.