Daily puzzles
Personal project
I designed a couple of puzzle games and built them with Claude Code on my phone.
Overview
Loopy and Tilbo are web-based games.
Loopy is a logic puzzle where you draw a single loop that satisfies numbers on the grid.
Tilbo is a word game where you stack words and tap matching letters to clear them. It’s like Tetris mixed with Wordle.
Both started as a way to experiment with Claude Code. I had been using Claude as a copilot for coding, but still leant heavily on reviewing and writing code myself. With agentic coding all the rage, I was keen to experiment by shipping a project end-to-end without touching my laptop or an IDE.
Coding on my phone
Loopy was built without a laptop or any design tools. Instead, I came up with the concept on paper, then described the mechanics to Claude to build and iterate on prototypes. Rather than trying to one-shot the whole thing, I built up each mechanic one at a time and tested as I went.
While slow for visual work that needed fine-tuning, I found this to be a great way to experiment with ideas that would take hours or days to build myself. I could come up with many ideas, offload the production to Claude, and test prototypes rather than agonising over every detail before building.
Finding the fun
I used this prototype-first workflow heavily when designing the rules for these games. For Loopy, my initial concept required the loop to pass through every cell of the grid. This made sense as part of an untested concept, but after actually playing the game many times it felt more like an arbitrary requirement.
Being able to work with cheap prototypes meant I could try new versions with very little fuss. This workflow helped to simplify the ruleset, make the puzzles less punishing, and make onboarding simpler since there were fewer rules to explain.

Data-driven difficulties
For a game with randomly generated solutions, it’s quite a challenge to tune the difficulty. With only a small sample of users before launch, it was a purely vibes-based approach at first.
With more players available after launch, I used A/B testing to experiment with different number placement algorithms that alter the difficulty of the puzzles. Completion was the main measure of success, but I also tracked session duration, signs of frustration like undos, and retention. All these things came together to give a rich picture of difficulty and stickiness.
The new placement algorithm made easy puzzles slower and less likely to be finished, but had the opposite effect on harder ones. Return rates and frustration held steady in both groups. From this experiment, I was able to optimise easy and hard difficulties to make them more fun.
Translations
For a side project, I would never consider the effort required for internationalisation. However, with Claude Code I could outsource the translation work and focus on the UX of people visiting from other countries. Loopy is available in 12 languages, each with its own URL so each version can be indexed by search engines.
Refining the workflow
After going phone-only for the development of Loopy, I spent some time reflecting on what was working, and where I felt the most limited. I had a rough concept in mind for Tilbo, and wanted to kick off that project with a refined version of this new workflow.
For the engineering side, it was clear agentic coding is the future. I really enjoyed using it for prototyping and trying new ideas. I like to go broad and experiment early in the design process, and this prototype-first approach felt very in tune with that.
The quality of the finished design was where I felt most let down by this way of working. Everything tended to have that low quality vibe-coded look to it, and getting the final product to something that felt polished became extremely tedious when my only tool was a chat window with Claude.
Best of both worlds
For Tilbo, I decided to begin like I would with any old project. I went back to trusty Figma and used that to experiment with the first concepts of the game. This allowed me to explore the visual direction and mechanics of the game at the same time, while knowing that I could easily prototype ideas with Claude. This gave me the push and pull of UX and UI while concepting, so that one could inform the other.
When I was happy with a particular direction, I could pass concepts to Claude as the basis for prototypes. This combination of detailed design and iteration gave me the right balance of control without losing the benefits of a prototype-driven design process.
Finding the fun, again
Like with Loopy, I designed the game mechanics of Tilbo through experimentation and iteration. My initial concept was for an endless game like Candy Crush. This endless mode is based around points, with the difficulty ramping up as you earn more points. Columns are added to the game as you progress, so you’re forced to play longer words and manage more tiles. I also introduced power-ups and locked letters to add depth to the game.
I was happy with this version at first, but found it got pretty boring. As the levels progressed, the lack of a goal made it feel aimless, and the increased difficulty was frustrating rather than challenging. The benefit to prototyping with Claude was that, because I hadn’t invested too much time in building this mode, I had no attachment to it. It was easy to assess that it wasn’t working, and throw it away in favour of a new approach.
After more experimentation, I realised it was very satisfying to find the right combination of words to clear the board. Regardless of the game mode I was testing, this was consistently something I was chasing. With that in mind, I rebuilt Tilbo around the concept of clearing the board.
Working across projects
A nice benefit to working on these projects simultaneously was that I could port ideas from one to the other, just by pointing Claude at both codebases. I added daily streaks to Loopy first, which took a bit of experimenting to find the right UX. Once I had it settled, it was easy to implement the same thing in Tilbo, despite their different layouts and frameworks.
Both games also have a dark mode and tutorial videos. The workflow for producing these went through a lot of iteration, and again I was able to easily port this process from Loopy to Tilbo.