Steve Krouse

I proposed to my girlfriend in Quordle

Emily loves puzzles. Every day she plays Wordle, the New York Times Mini, Connections, Spelling Bee, LinkedIn Tango and Queens, and Quordle, in that order.

I thought it'd be fun to propose in one of her favorite games. It's appropriate, after all, because Wordle itself was created for love. But which game would work?

At the end of the day you have to say "Will you marry me?" so that ruled out many options. How can you fit that into Wordle or Connections? I tried my hand at a crossword, but damn those are hard!

Eventually I realized the question would fit inside Quordle, but with extra letters. For context, Quordle is four Wordles that you're playing at the same time. I'd deal with the extra letters by having them fall away at the end, leaving the big question. The first set of words I came up with were "Willy", "Youth", "Marry", and "Meaty", but I eventually changed "Meaty" to "Meter" because Emily loves when words end with "er".

Enter AI. I work at Val Town, and we make a website for programmers to build apps. Townie is our AI-assistant that writes Val Town apps for you. I started with a very simple prompt and a screenshot of Quordle.

On a cold December night at Betaworks in Chelsea, I cozied up and worked with Townie for 90 minutes. It was one of David Bieber's wonderful hack nights, so the atmosphere was perfect. By the end of the night, it was done. I remember it being a lot of fun.

Looking back at the chat history, I see that there are 91 versions, which means I was averaging about one edit per minute. It takes Townie, powered by Claude 3.5 Sonnet, about 30-60 seconds to rewrite a couple hundred lines of code, so that would account for the speed. I think most of those edits were through Townie, but I also made some manual edits to the code for smaller changes.

The basic mechanics of Quordle were more complicated than I'd realized. For example, the keys on the on-screen keyboard need to be colored appropriately, green, yellow, gray, and black, representing whether that letter is in the right spot, wrong spot, not in the word, or not played yet, respectively, and in four quadrants, for the four different Wordle boards on-screen. Also each of the attempts on each Wordle board needs to be colored appropriately, with subtle rules governing various end states.

But after I got the basic mechanics working, the game felt flat somehow. I pulled up the original and noticed all sorts of tiny micro interactions that gave the game life. When you press on a letter on the keyboard, it moves up and turns another color. When a letter shows up on the screen, it animates in. When you get a word correct, it animates in in a flipboard style.

I also wanted to copy how Quordle highlights invalid words in red, but for that I needed a list of valid words. It was suprisingly easy to find the list that Quordle itself was using. I popped open the Chrome Network tab, navigated to Quordle, and hit Cmd+F to get the Search across everything. There I just put a random word that I knew to be on the list, "youth", and voila. I found it interesting to see the lists, broken up into a `wordBank`, `blacklist`, and `allowed`. I went with the `allowed` list.

I later realized that the letters-falling-away animation at the end happened quite quickly, so I needed some way to slow it down, and get her attention. I could imagine her looking away right when she gets the last word, and she'd miss it. So I had Townie add a modal when she won, asking her if she's ready for the next level.

The morning I decided to do it, we first started with her normal word games. Then I announced that I made her a word game. She was excited. She enjoyed the Quordle, but was a bit confused why all the words were so random. The only one that had any significance was "meter", because it ended in "er", but even that significance was weak. Safe to say she had no clue what was coming. She got to the win screen and was ready for the next level. The letters fell away and she turned to me and said, "What?"

The rest happened in a blur, but I did get down on one knee and pull out a ring. She said yes.

You can play Emirdle here. The next level is reserved for Emily.