Skip to content

eddmann/secret-santa-draw-arcade

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

17 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŽฎ Secret Santa Draw Arcade

Because why just draw names when you can earn them through retro arcade games?

Every year I over-engineer our family's Secret Santa allocation. This year: retro arcade games built with Phaser.js. Participants play a randomly selected Christmas mini-game to unlock their Secret Santa assignment. No backend, no accounts, just pure client-side gaming fun.

Tech Stack: React, TypeScript, Phaser.js, Bun

๐Ÿš€ Getting Started

bun install
bun dev    # Start development server
bun build  # Build for production

๐ŸŽฏ The Games

Each participant gets a random game challenge. Complete the challenge to reveal your Secret Santa recipient letter by letter!

Santa Maze
Navigate a peppermint maze, collect 3 ornaments, then reach the present
Reindeer Delivery Dash
Fly Santa's sleigh through the sky, collect 4 stars while dodging obstacles
Stocking Fill Match
Memory game: match 6 pairs of holiday icons
Gift Stack Challenge
Balance and stack 6 falling gifts on a moving platform
Snowball Slingshot
Aim and launch snowballs to knock 5 ornaments off the Christmas tree

๐Ÿ“– How It Works

  1. Create your event and add participants
  2. Set any exclusions (e.g., couples shouldn't get each other)
  3. Generate unique game links for each participant
  4. Share the links - each person plays their game to reveal their match
Event Creation Generated Links
Event Creation Generated Links

The allocation algorithm ensures valid pairings while respecting exclusions. All data is encoded in the URL, so there's no backend or database needed.

Previous Years

This is part of my annual tradition of over-engineering Secret Santa:

๐Ÿ“„ License

MIT

About

๐ŸŽฎ Secret Santa allocation through retro arcade games. Play Christmas mini-games to unlock your Secret Santa assignment. Built with React, TypeScript, and Phaser.js.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages