The Random Picker tool draws numbers from a range, or picks items from a one-per-line list, in the browser. Two mode buttons sit at the top: Random Number, the default, with a Min field pre-filled with 1 and a Max field pre-filled with 100, and Random List Item, with a text area whose placeholder is Alice, Bob, Charlie, Diana. Below them, a Count field (1 by default), an Allow repeats checkbox (off by default), and the Pick Random button. Pressing it prints the draws in a large Result line with a copy button underneath, and every pick also lands in a History list of the ten last results. Nothing is sent anywhere: the range math, the list split, and the draws all run on the device, and a reload of the page wipes the result and the history.
What the tool takes and what it gives
The inputs are the two mode buttons, the mode-specific fields, the Count, and the Allow repeats switch, and the only action is the Pick Random button, so nothing is computed live: the result changes only when you press it. The result block shows a small Result label, the draws in large text, and a copy button that copies exactly the result string. There is no clear button and no way to reset: the result stays on screen until the next successful pick overwrites it, and the history list, headed History, grows up to ten entries, newest first.
How number mode draws
The Min and Max fields are read as integers, so a decimal in either is read as its integer part: a Min of 1.9 is a Min of 1. The range is inclusive at both ends, and each draw is the floor of the range size times a random fraction, added to the minimum, which makes every integer in the range equally likely: over ten thousand draws from 1 to 10, each value landed between 970 and 1050 times. The range size is max minus min plus one, and each pick request draws Count draws, one per slot.
What no repeats does in each mode
With Allow repeats off, number mode first caps the request at the range size: asking for five draws from 1 to 3 draws three, because there are only three numbers. Each slot then draws, and if the drawn number was already drawn in this round it draws again, in a redraw that consumes no slot, so the result always has the full min of count and range size unique numbers; a range where min equals max, like 7 to 7, returns a single 7 no matter how many you ask for. List mode is the same idea with a pool: each draw takes an item from the pool and removes it, so every distinct line you typed is picked at most once, and the draws stop early if the pool runs dry before Count.
What list mode does to your text
The list is split on line breaks, each line is trimmed of surrounding spaces, and the lines that are then empty are dropped, so a line of Alice with a trailing space becomes Alice, and a blank line between names is ignored. Duplicated lines are not merged: two lines that both read Alice put two Alice entries in the pool, and with no repeats on, a two-draw pick can still come back A, A, because the two entries are separate pool members. An input that is empty, or only spaces and line breaks, leaves no items at all, and the pick does nothing.
When a pick does nothing
Three inputs make the button a no-op: a Min that is greater than the Max, a Min or a Max that is not a number, and a list that trims to nothing. In each case the page makes no result and adds no history entry, and the previous result stays exactly where it was, because a failed pick does not clear it. The Count field is the forgiving one: an empty Count, a word, or a 0 all read as 1, so the field can be blank and the pick still draws once.
Where the numbers and the names go
Nowhere off the device. The fields are read by the page, the draws run on Math.random in the browser, and no network request is made at any point. The result and the ten-entry history live in the page state only: there is no saved history and no storage, so reloading the tab empties both. Copy uses the browser clipboard, so the drawn values leave the page only if you press copy and paste them somewhere.
What it is not
The tool draws, it does not generate secure values: Math.random is not a cryptographic source, so for identifiers use the UUID Generator, and for passwords the Password Generator, which are built on the browser secure randomness. It is also the lean end of random numbers: for a range with more options, the Random Number Generator goes further. For the walkthrough of another browser-computed tool in the same vein, see the string similarity guide.