I've never written a blog post before. Fifteen years of shipping console games and I've never once thought "I should tell the internet about this." But I built a mobile game in three days using AI for basically everything, and it was strange enough that I figured I'd just write down what happened.

I built the core of a nonogram puzzle app in about three days of intensive work. The deployment, store listing, testing, and approval process took longer — but the actual app went from idea to functional in a long weekend. I wanted to stress-test a hypothesis: that current AI tools had gotten good enough to build a real, shippable app on a platform I'd never worked on.

AI was involved at every stage. I'm not a mobile developer — my background is console game programming. I had never shipped a mobile app before this. I also didn't write a single line of code. Every line was generated by AI. I directed, reviewed, decided, iterated — but the code itself was entirely AI-generated.

The App

NonoPix is a daily nonogram puzzle game. No ads, no power-ups, no dark patterns. You get a free puzzle every day, and if you want more, there's a one-time lifetime purchase to unlock an archive of past puzzles. That's it.

It's intentionally minimalist. Nonograms don't need flashy graphics — it's a grid, some numbers, and your brain. That simplicity is partly what made this possible in three days. But the app still has the stuff you'd expect: weekly themed puzzles, difficulty levels that ramp through the week, achievements, leaderboards, a celebration screen when you solve one, stats tracking.

AI at Every Step

Ideation, prototyping, backend tooling, deployment, debugging, UI/UX iteration, store listing copy — all of it involved Claude Opus 4.6 in some capacity.

The most effective workflow turned out to be the UI iteration loop. I'd take a screenshot of the app, send it to Claude, and say "this feels off, the spacing is wrong" or "this screen looks too bland" — sometimes with specific complaints, sometimes giving the AI full creative freedom. It would come back with concrete suggestions and exact values. Colors, padding, typography. Not vague "maybe try making it more vibrant" direction — actual hex codes and pixel values I could drop straight in.

Where It Wasn't Smooth

It wasn't all effortless, though. The main puzzle grid was by far the biggest struggle. Getting a nonogram grid to feel right on a phone screen — responsive, touchable, readable at different puzzle sizes, scrollable when it needs to be but not when it doesn't — that took a lot of back and forth. I'd get something that looked fine on a 5×5, and then it'd completely fall apart on a 15×15. Or the touch targets would be too small. Or the number clues along the edges would clip or overlap. I lost count of how many iterations we went through on that grid alone. It was the kind of thing where every fix introduced a new problem somewhere else.

The other big challenge was figuring out how to generate puzzles from images. Turning a picture into a solvable nonogram grid is a surprisingly tricky problem. You need to reduce the image down to a pixel grid, but you also need to make sure the resulting puzzle actually has a unique solution and that it's solvable through logic alone (no guessing). The AI would get it working for simple cases and then it'd produce puzzles that either had multiple solutions or required backtracking to solve. We went through several approaches before landing on something reliable. That part alone probably ate most of a day.

The Setup

Built with Expo/React Native, version controlled on GitHub. One thing that kept the whole project organized: Claude maintained its own todo list as a file in the repo. I didn't manage tasks — the AI tracked what was done, what was next, and what was blocked. I just pointed it in the right direction.

One thing that kept the momentum going: using Claude Code through the phone app with Happy Coder — a free, open-source tool that lets you remotely control Claude Code from your phone — I could keep working while away from my computer. Waiting for coffee? Fixing a bug. On the couch? Iterating on the main screen layout. That flexibility matters a lot during a compressed build like this.

The backend runs on Supabase, and Claude managed that too — setting up tables, writing queries, handling the integration. The subscription handling, puzzle generation tooling — AI helped scaffold and debug all of it. Problems that would normally eat an afternoon — RevenueCat credential issues, Android notification icons getting clipped — got resolved in minutes. Describe the problem, get a direction, move on.

What I Actually Think

I made every architectural decision. I knew what the app should feel like, what the business model should be, what to ship and what to cut. The AI just made the gap between "I know what I want" and "it's on screen" a lot shorter. And it let me build on a platform I'd never touched, which is the part that still feels a little surreal.

Three days for the core is fast. But the app doesn't feel rushed — it feels focused. I actually ended up adding way more features than I planned going in. In-depth stats, a full achievements system, difficulty tiers — stuff I would have cut from scope if I'd been writing it all by hand. The speed of iteration meant I could keep saying "yeah, let's add that too" instead of triaging features out.

How I Got Here

I started using AI for development at work back in July 2024. It wasn't that impressive at first. The outputs were hit or miss, you spent a lot of time correcting things, and it often felt faster to just do it yourself.

But the models kept getting better, and at some point — I can't pinpoint exactly when — it crossed a threshold. It stopped being a novelty and became something I couldn't go back from. The NonoPix build was a direct result of that shift. A year ago I wouldn't have attempted this.

I keep going back and forth on what to make of all this. I shipped a game in three days and I'm not sure if that's exciting or unsettling. Probably both. I'll figure it out after I try building a second one.

Want to try it? NonoPix is live on Google Play — it's free.