List Randomizer — Shuffle Any List
A list of five names has 120 possible orders — this shuffler picks one of them uniformly at random, every time, with the full shuffled list numbered and ready to copy.
How it works
One item per line, press the button, and the list comes back shuffled and numbered — who presents first, the order of the draw, this week's rota, the running order of a quiz night. Press again for a fresh shuffle; every ordering is equally likely, which is the entire moral requirement of a draw.
The first item is also echoed on the results panel, because half the time the real question is just “who's first?” and the rest of the order is ceremony.
The method
A Fisher–Yates shuffle driven by crypto.getRandomValues: each position swaps with a uniformly chosen remaining position. That algorithm is the provably uniform one — every permutation of N items has probability exactly 1/N!, unlike naive sort-by-random tricks, which are biased.
Frequently asked questions
Is the shuffle really fair?
Yes — Fisher–Yates with a cryptographic random source gives every possible order exactly equal probability. It is the same algorithm used for properly shuffled digital card decks.
Can I use it for a prize draw?
It is well suited: paste entrants, shuffle, and the top name is the winner — with the full order visible as an audit trail for runners-up and redraws.
What if two lines are identical?
Both are kept and shuffled as separate entries (two people can share a name). If you need each entry unique first, run the list through the duplicate-line remover.