I have had an unpleasant week. Everything that could have gone wrong, has gone wrong. Even some things that had no business going wrong went wrong. Every day it was something different. By this morning I felt like I was going to have a panic attack.

I hate when life makes me feel like I suck at what I'm doing. I know I'm OK at it, just sometimes the world gangs up on you.

So I spent this evening making something to remind myself that I can do this and I do enjoy it.

Something we struggle with at my Wednesday night badminton, is who's going to play matches. You add a club (in case you play at multiple), you add all that club's members (and mark them as absent if they're away that session), then you're ready to create your matchups. Enter 2 for Singles or 4 for doubles and it'll generate a game for you. If someone sits out, you can mark them as absent for that selection round, and maybe you can change to singles.

This is going to require a fairly modern browser. It's only tested in Chrome and Mobile Safari and that's really the only intended users for it, so either use one of those or don't use this! Everything is stored in your browser's local storage so nothing you enter is sent to my server, and it never will be.

There's a couple of things missing:

  • The first player in a game is chosen at random from all available players. Their opposition is also chosen at random. It would be nice if your opposition was chosen from players who had never shared a court.
  • It would be nice if you could manually set x number of players in a match, then opt to automatically fill them in. That's potentially a lot of UI, though, so I want to make sure I do it in a minimalist way that is also usable.

By the way I love React. I know it's not what people use now but I'm always a late adopter for this stuff.

10/01/2021

Guarantees The same thing three times