A white-label, interactive Valentine's Day quiz that generates a personalized love letter based on the recipient's answers. Built with React, Vite, and Tailwind CSS.
Fork it, customize it, deploy to your own Github Pages β send it to your loved one!!!
Use AI to build it for you! Less then 15 minutes to receive a personalized Valentine's Day quiz website on Github Pages!
git clone https://github.com/<your-username>/valentine-2026.git
cd valentine-2026
bun installTell your AI Agent (like Claude, Cursor or OpenCode):
Ask me 5=10 questions about my partner (names, favorite memories, inside jokes) to customize the Valentine's Day quiz. Wait for my answers, then regenerate the files in
config/with personalized content and run the local dev server.
# Start development server
bun run devIf you prefer to edit files manually or edit directly on GitHub.
- Fork this repository to your own GitHub account.
- (Optional) Edit directly on GitHub: You can edit the
config/files directly in your browser (even on mobile!) without installing anything. This is the easiest way!
Customize the quiz to fit your relationship. Edit the files in the config/ directory:
config/config.ts: Update names (senderName,recipientName), UI text, and messages.config/content.ts: Modify quiz questions, answers, and the love letter segments generated based on their choices.- Swap Videos: Add your own videos to
public/videos/and update the references incontent.ts.
Receive the quiz results and the generated love letter directly to your inbox using EmailJS.
- Follow the EmailJS Setup Guide to get your Service ID, Template ID, and Public Key.
- Create a
.envfile locally for testing:EMAILJS_SERVICE_ID=your_service_id EMAILJS_TEMPLATE_ID=your_template_id EMAILJS_PUBLIC_KEY=your_public_key
- For production, add these as Secrets in your GitHub Repository Settings
(
Settings>Secrets and variables>Actions).
- Go to your repository Settings > Pages.
- Under Source, select GitHub Actions.
- Push your changes directly to YOUR
masterbranch :) - Wait for the Action to complete. Your unique Valentine's URL will be:
https://<your-username>.github.io/valentine-2026/
- Interactive Quiz: 7 thoughtfully designed questions with multiple question types (Multiple choice, Heart rating, Yes/No, Emoji reaction).
- Personalized Love Letter: Answers are automatically assembled into a unique love letter.
- Beautiful Design: 7 unique visual themes with gradient backgrounds and animations.
- Confetti Celebrations: Animated confetti bursts at key moments.
- Responsive: Works seamlessly on mobile, tablet, and desktop.
- Email Integration: Answers sent via EmailJS (optional).
# Start development server
bun run dev
# Build for production
bun run build
# Run tests
bun run testconfig/
βββ config.ts # White-label configuration (names, text)
βββ content.ts # Questions, answers, letter segments
src/
βββ components/ # React components
βββ styles/ # Tailwind variants
βββ utils/ # EmailJS, confetti logic
public/ # Static assets (videos)
email-templates/ # Email templates & setup guides
- Runtime: Bun
- Framework: React 19
- Build: Vite
- Styling: Tailwind CSS v4
- Testing: Vitest
For setup issues or customization help, refer to:
- email-templates/SETUP.md - EmailJS configuration guide
- email-templates/README.md - Email template documentation
- CLAUDE.md - Development guidelines