📖About Secret Santa-inator
What is Secret Santa-inator?
Secret Santa-inator is a simple, privacy-focused web application that helps you organize Secret Santa gift exchanges with your friends, family, or coworkers. No registration required, no personal data stored - just pure holiday fun!
How it Works
Create a Group: Start by creating a new Secret Santa group with a name and description.
Invite Participants: Share the group link with friends and family so they can join.
Add Wish Lists: Everyone can add their wish list items to help their Secret Santa choose the perfect gift. (maybe in the future)
Draw Names: When everyone has joined, the group admin can randomly assign Secret Santa pairs.
Exchange Gifts: Each participant can see who they're buying for and their wish list - the fun begins!
Privacy & Security
- No account registration required
- Data is stored locally in your browser
- Groups are identified by unique, private links
- Only group members can see group details
- No personal information is collected or stored
Features
For Everyone:
- Join multiple Secret Santa groups
- Create and manage wish lists
- View your Secret Santa assignment
- Easy group joining via shared links
For Group Admins:
- Create and manage groups
- View all group members
- Randomly assign Secret Santa pairs
- Share group links easily
Technical Details
Built with Next.js, React, and Tailwind CSS. Data is managed through Supabase for reliable group coordination while maintaining privacy. The app works entirely in your browser with no server-side user tracking.
From the author
This project came about due to a random request from my sister to hunt for a tool that could help her organize Secret Santa groups.
I then took this as an opportunity to conduct an experiment: How far can I take an AI tool (GitHub Copilot) to write code for me without me intervening and writing it myself. As it turns out, very far!
You see, this application is written virtually by AI — everything from front-end logic to backend triggers. I haven't written a line of code in this project apart from this small section here on the About page and a couple of Supabase client code I copied from a previous project.
Most of the time I spent is on writing prompts, reviewing the changes, accepting some changes, and refining the rest with further prompts.
Notice the "Add Wish Lists" feature it hallucinated? I figured to keep it for illustration purposes and just ask GitHub Copilot to add a disclaimer there.
Am I satisfied with the end result? On the backend side, absolutely! That part took the most scrutiny from me. As for the frontend, I'll admit I still feel uneasy about the fact that I just blindly accepted the suggested code based on how it looked on the browser.
Anyway, this whole project/experiment has been fun and I am very happy that I have something to show for, considering that it only took about a day to complete.