For a fixed number of players a printed round-robin chart already does the job: 12 players, 11 rounds, nobody partners the same person twice. If your club night really is twelve people who all arrive at seven and leave at nine, download a sheet and you are done.
Club nights are not like that. Eleven turn up, not twelve. Two more come in after the first game. Somebody has to leave early. You want to carry on for as many rounds as the hall allows, not stop when the chart runs out. Every one of those invalidates a printed schedule, and a hat does not remember anything at all. This generator builds each round from whoever is on court right now, and carries forward what has already happened: who has partnered whom, who has faced whom, and who has sat.
Two things it tracks that most pairing tools do not. First, opponents, not just partners: a new partner against the same two people across the net is not a fresh game, and it is treated as a repeat. Second, crossovers: a player you partnered in round two coming back as your opponent in round five is counted too, and avoided the same way. As far as we know, no other pairing app does that. The result is that a room of sixteen on four courts stays genuinely mixed deep into the night, and when a repeat finally becomes unavoidable you can see it on screen rather than hear about it afterwards.