spinlah — spin the wheel random picker and food decider

← joeee.dev
Nasi lemakChicken riceMamakSkip lunch

✏️ Options (4)

Nasi lemak
Chicken rice
Mamak
Skip lunch

Tap ×1 to weight an option up to ×5. A ×3 gets a slice three times as wide and three times the chance in the race — same odds, two shows.

📊 Your record

0Day streak
0Best streak
0Decisions
—Most picked
🗓️No decisions yet. Everything below stays on this device.

Every spin is committed before it animates — the receipt prints the seed and its SHA-256 so nobody can claim it was rigged.

Running on the bundled demo pantry — no Places key configured. Nothing you import leaves your browser.

Built by Joe Ee · read the research behind the import

// FIELD NOTES

How the spin wheel picks a winner

A random picker with three modes — a wheel, a cat race, and where-to-eat — that decides the winner from a seed before anything moves.

  1. Type your options, or import your Google Maps saved list.
  2. Spin the wheel or race the cats; the winner is fixed first.
  3. Save the receipt, with its seed, and send it to the group.

Questions people ask

Is spin the wheel really random?

Yes. Before the wheel moves, spinlah draws a ten-character seed from your browser's secure random generator and fixes the winner from it. The animation only shows that result.

What does “provably fair” mean for a random picker?

Here it means seeded and reproducible. The winner comes from a seed chosen before the animation, and the receipt prints that seed and its SHA-256 hash. The same seed with the same options, order and weights always gives the same winner. The receipt also counts re-rolls.

Can I make a weighted spin wheel?

Yes. Tap an option's ×1 badge to cycle it up to ×5. A ×3 option is three times as likely to win as a ×1, and the cat race uses the same odds. The wheel draws it that way too: a ×3 slice is three times as wide.

How do I import my Google Maps saved places?

At takeout.google.com, deselect everything, tick Saved, and download the ZIP. Drop it into Where to eat and spinlah reads one list per CSV, in your browser. You can also paste names, one per line.

How do I decide where to eat with friends?

Load your saved list, or the demo list of Klang Valley places. Filter by cuisine, price, distance and recent picks, veto anything nobody wants, then send up to twelve to the wheel or the race and share the receipt in the chat.

Do I need to log in?

No. History, streaks and imported places stay in this browser's local storage, and Takeout files are read on your device.