family
Eriksson Santa: Never Repeat a Secret Santa Pair Again
Astrid Eriksson built a family Secret Santa app that tracks six years of history, blocks forbidden pairs, and guarantees nobody pulls their own spouse.
Artem
Founder
· 4 min read

Every November, someone in the family has to run the Secret Santa. In the Eriksson household, that's Astrid, and for the past six years she's kept a growing stack of notes: who drew whom in 2019, who got paired in 2021, and — most importantly — the hard rule that Sven and Britta must never, ever draw each other again after the awkward 2022 incident when Sven pulled his own wife. Paper hats and spreadsheets were never built for this.
Eriksson Santa is a small, focused app built for exactly this problem. It knows your family roster, remembers every draw going back six years, respects your forbidden pairs, and produces a valid shuffle in seconds. The interactive demo below is seeded with the Eriksson family's real data — try running a draw yourself and see what happens when the constraints actually hold.
Live demo
The 2022 Problem
Secret Santa has one unspoken rule that paper draws can't enforce: spouses shouldn't buy for each other. When there are eight or ten relatives in the hat, the odds that Sven pulls Britta aren't negligible, and when it happens in front of everyone at the kitchen table, the organizer feels it.
Beyond the spouse problem, there's a subtler one: repetition. If Lars bought for Mormor last year, and the year before that, the tradition starts feeling a little predictable. Tracking that by hand across six years of notes means cross-referencing a small spreadsheet every time you want to re-draw, and it's easy to miss something.
Eriksson Santa makes both problems deterministic. The draw algorithm produces a valid derangement, which means nobody ever draws themselves, forbidden pairs are always skipped, and no pairing that happened in the last six years gets repeated. If a valid draw doesn't exist under those constraints, the app tells you, so you can relax a rule rather than accidentally break one.

What You Can Do in the App
The organizer view starts with the family roster. Add a member, set their forbidden pairs (Sven, Britta), and the app remembers them permanently. When you hit Draw, the result appears instantly, and you can keep re-drawing until you're happy with it, each time still respecting every constraint.
Below the draw, the full year-by-year history is laid out as a browsable ledger. Each past year shows every pair, and if a historic draw would now break a rule you've added since, the app flags it, so you know the constraint is new, not retroactive.
There's also a small giver chart that shows, across all recorded years, who has played Santa most often to whom. It's not the main feature, but after a few years of data it's genuinely interesting, the kind of pattern you'd never spot from a folder of old notes.
Offline and Ready on First Open
The app stores everything on-device with no account required. The Eriksson family data is seeded on first open, so you're not staring at an empty screen, you can explore the history, run a draw, and understand the flows before entering a single real name.
When Astrid hands her phone to a cousin to show the draw result, it works without a connection. That matters in December kitchens where the Wi-Fi is competing with twelve people streaming the same holiday playlist.
Try the Draw Yourself
The live demo embedded here is the real app running in your browser. The Eriksson family is already loaded: eight relatives, the Sven-Britta forbidden pair, and six years of history. Tap Draw and watch the algorithm find a valid assignment. Then try adding a new forbidden pair and drawing again, the result will update immediately.
If you want to see the history view, scroll down in the app to the ledger and look for the year that was flagged after a rule was changed. It's a small thing, but it's the kind of detail that makes the organizer feel like the app actually understands the job.
The screenshot below shows the giver chart after six years of data, where it becomes clear that one family member has been unusually lucky about drawing the same recipient twice.
Building Something Specific Beats a Generic Tool
There are plenty of Secret Santa randomizers online. Most of them do one thing: shuffle names and email the results. None of them know that Sven and Britta can't be paired, that Lars drew Mormor two years running, or that your family has been doing this for six Decembers.
Eriksson Santa started from a real complaint about a real recurring problem, and that specificity is what makes it feel different. The forbidden pairs aren't a power-user feature buried in settings, they're a first-class constraint the app treats as seriously as the draw itself.
Building something this focused used to mean a weekend project or a favor from a developer relative. Now it's a description and a few minutes. If your family has its own version of the 2022 problem, the call-to-action below is an honest invitation.
39
files in the build
40.5 MB
app bundle
Flutter Web
runs in any browser
Your family ritual, your rules
Describe the recurring problem you want to fix, and Leanfinit will build a working app around it, your constraints, your history, your family.