Building 25 tiny worlds
If you cracked open Catch Me Meow looking for the art folder, you'd find it empty. There are no image files in this game. Not one. Every cat, every dog, every hat, every world is drawn in code โ circles, rectangles, and paths, with bold ink outlines and flat, cheerful fills, the way the picture books we love (P. D. Eastman, Sandra Boynton) taught us a drawing should feel. So when we say we built 25 tiny worlds, we mean it a little differently than most games do. We didn't paint 25 backdrops. We wrote 25 recipes.
This is a tour of how those recipes work: how a world gets its colors, its furniture, its music, its secrets โ and why the whole thing rebuilds itself fresh every single round.
A world is a recipe, not a painting
Each world is really four ingredients stirred together: a palette, a set of landmarks, some props, and its own music. The palette does more work than anything else. Since every shape in the scene is drawn by the same engine, a world's colors aren't decoration on top of the art โ they are the art. Pick a handful of colors the whole scene agrees on, and suddenly you can squint at the screen from across the room and still know exactly where you are.
Landmarks come next: the big shapes that anchor a place and make it feel like somewhere instead of a colored rectangle. Because everything is procedural SVG, a landmark is just a bigger drawing than a cat โ same circles, same paths, same ink outlines. I build them the way I build critters, which means they belong in the frame the way the critters do. Nothing looks pasted in, because nothing is.
Then the music. Every world hums its own tune, so your ears know you've traveled somewhere new before your eyes finish looking around. It's a small thing. Small things are most of what a tiny world is made of.
Everybody suits up
Here's my favorite trick in the whole game. Every critter is authored inside a little 200-by-200 box, with the head, the eyes, and the feet always at the same fixed spots. We did that for a humble reason: hats. Draw a hat once, and it sits properly on every cat and dog the generator can dream up, forever. But once every head is guaranteed to be in the same place, you can do much more than hats. You can dress an entire crowd.
Under the sea, everyone wears dive gear. Not just the cat you're chasing โ the whole crowd suits up, because a world should be a place with rules, and the rule down there is that you bring your own air. The costume is a world-level ingredient, same as the palette: the scene hands out helmets the way it hands out colors, and every critter that gets drawn that round arrives already dressed for the occasion.
I love what this does to the game of finding your cat. The costume makes the crowd feel like a crowd โ a school field trip where everybody's in the same uniform โ so spotting the one you're after becomes a warmer, funnier kind of looking. You're not scanning strangers. You're picking your kid out of the class photo.
Worlds where you bring the light
A few worlds go dark. The scene draws itself the same as always โ landmarks, props, crowd, all of it โ and then the lights go out and a flashlight turns on. Now hide-and-seek changes flavor entirely. Instead of scanning a whole busy scene at once, you sweep a beam across it, and every critter you catch in the circle of light gets its little moment on stage before the dark swallows it again.
Kids understand this instantly, because it's the game they already play under the covers with a real flashlight. The dark worlds aren't harder, exactly. There's no way to lose in Catch Me Meow โ no timers, no fail screens, nothing that punishes a slow looker. The dark just makes the looking itself feel like the adventure.
Tucking the treasures in
Every world hides treasures โ 121 collectibles across the game, each one drawn in code like everything else, in that same picture-book style. Hiding them well turned out to be its own quiet craft. A good hidden treasure sits where it almost belongs: nestled among the props of its world, matching the palette just enough that your eye slides past it the first few times. Then one round it snags your attention, you tap it, and it's yours.
I like that the treasures reward wandering rather than rushing. There's nothing racing you. The game screen shows no ads, ever, by design, and there are no accounts to make โ your collection lives right on your own device, filling up at whatever pace your household wanders. Some families sprint through worlds. Some sit in one for a week, tapping everything. Both are playing it right.
Fresh every round, forever the same
Now the part that ties the whole workshop together. Every critter in the game comes out of a seeded random-number generator. Feed the generator the same seed and it redraws the exact same critter, every time, down to the last whisker. That one property is why the worlds can be rebuilt fresh every single round โ new crowd, new arrangement, new places to look โ and yet stay reproducible. Nothing is ever loaded from disk, because nothing needs to be. The world remembers how to draw itself.
We recently rebuilt the whole game on React and TypeScript, and the happiest fact of that rebuild is what didn't change: it's the same hand-drawn engine underneath, still conjuring everything from circles and paths. That engine has even picked up a side job โ the free coloring pages on this site are generated by it, the very same drawings rendering themselves in black and white so your kids can bring the color themselves. The art literally draws its own coloring book.
One last thing before we turn the workshop lights off. This whole game started as a homemade gift โ a dad building something for his wife and little ones โ and our real pets Max, Yogi, Penny, and Mika are in there among the crowds, drawn in code like everyone else. They're also the reason the site quietly points families toward shelters like Austin Pets Alive. Twenty-five tiny worlds full of cats and dogs who need finding; it seemed only right to mention the real ones who do, too.