Skip to content

mihalidis/GhostyRaffle

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

👻 GhostyRaffle

A pixel-art secret gift exchange app where no one — not even the host — can see who got matched with whom.

🔗 Live: GhostyRaffle

GhostyRaffle Screenshot


What is it?

GhostyRaffle is a stateless, privacy-focused secret Santa / gift exchange tool. Add your participants, hit START DRAW, and everyone receives a secret email with their match. No data is ever stored — matches exist only in memory during execution.

Features

  • Completely Private — matches are never saved to any database or log
  • Cryptographically Secure — uses Fisher-Yates shuffle with CSPRNG
  • Retro 8-bit Aesthetic — pixel art ghosts, Press Start 2P font, arcade animations
  • Email Delivery — each participant gets a styled pixel-art email via Resend
  • Rate Limited — built-in protection against abuse
  • Responsive — works on desktop and mobile

How It Works

  1. Add participants (min 3, max 50)
  2. Hit START DRAW
  3. Each player gets a secret email with their match
  4. No one sees the full list — not even you

Tech Stack

  • Framework: Next.js 16 (App Router)
  • Styling: Tailwind CSS + Press Start 2P font
  • Email: Resend
  • Language: TypeScript
  • Randomization: Web Crypto API (CSPRNG)

Getting Started

# Install dependencies
npm install

# Set up environment variables
cp .env.example .env.local
# Add your RESEND_API_KEY and RESEND_FROM_EMAIL

# Run development server
npm run dev

Open http://localhost:3000 to see the app.

Environment Variables

Variable Description
RESEND_API_KEY Your Resend API key
RESEND_FROM_EMAIL Verified sender email address

Deploy

The easiest way to deploy is with Vercel:

Deploy with Vercel

Make sure to add RESEND_API_KEY and RESEND_FROM_EMAIL to your environment variables in the Vercel dashboard.


Built with Next.js & Resend — your data is never saved 🔒

About

GhostyRaffle 👻 | A stateless, privacy-first secret gift exchange app with a retro pixel art soul. No database, no traces—just pure, encrypted gift-giving fun. Built with Next.js, TypeScript, and Resend.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors