Case Study · Personal

Make It Go

A coding game for pre-readers (ages 3–7)

Role
Creator, designer & developer
Platform
Web + Android (TWA), touch-first
Stack
React · TypeScript · Vite · Claude · ElevenLabs
6
Themes
128
Tests
Live
Shipped

Overview

Make It Go teaches a child who can't read yet the core intuitions of programming — through play. They tap large picture-tokens to build an ordered plan, press go, and the character does exactly what they said. No reading, no typing, no microphone.

Success is measured by capability gained, never time on app. The win condition is that they outgrow it and graduate to ScratchJr. A warm AI partner talks them through it by voice and decides when they're ready for the next idea.

Make It Go — a bunny meadow level: a partner speech bubble, a path with a water gap, a carrot goal, and a tray of picture-tokens

Level 1: “Uh oh, a gap! Pick the one move that gets the bunny past it, then press go.”

Why I Built It

The gap before reading

I have two kids — Zoe (2½) and Autumn (5). When I went looking for games to build the foundation under coding — sequence, cause and effect, “it does exactly what you say” — I found a surprisingly big gap: lots of flash, very little that genuinely builds capability at this age, before reading. So I started building the thing I actually wanted for them.

Underneath the play there's a real question I want to answer.

“Can an AI partner make a pre-literate child more capable — by building on what they already know, instead of marching them down a fixed path?”
— The experiment

That's the experiment. The app is the instrument; the finding is the point.

How It Plays

Say what to do, then watch it happen

The character walks itself — walking is free, never something they program. A level is a path of event points, each needing one action: a gap → jump, a branch → duck, a step → climb; later a key → grab, a gate → open. They lay out an ordered row of action tokens, then tap go.

It's plan-first, then run — no twitch input, no runner mechanic.

match → pass
The right action at the event point, and the character keeps moving toward the goal.
mismatch → fail visibly
A wrong action fails right there — a stumble, a splash. The gap between what they meant and what they said is the debugging lesson. No autocorrect, ever.
reach the goal → win
Every wrong plan is a revise, not a dead end — with one good nudge from the partner, never the answer.
Four jumps folded into a single repeat chip

Iteration: fold many jumps into one repeat chip

The bunny at a locked gate, having walked past the key

Decomposition: grab the key first, or the gate stays locked

The Capability Ladder

One idea at a time

Each level plants or reinforces exactly one idea, in order, and is reskinnable by any theme — a theme is just data (a hero, its poses, the obstacle art, a palette), never a fork of the engine. Anchors are spoken in the same childlike words every time — that's what makes them stick — and map straight onto ScratchJr for the handoff.

Choose your character — six original characters in a grid: bunny, fox, dino, princess, truck, astronaut

Six original theme packs over one engine — the only front door is “choose your character”

L1
Sequence — the right move at the right spot (a gap → jump)
“It does exactly what you say.”
L2
A second move — a branch to duck under
Same anchor, new mapping
L3
Order — a gap then a step, right moves in order
“Steps happen in order.”
L4
Iteration — a run of gaps, folded into one repeat chip
“Bundle steps and do them again.”
L5
Decomposition — grab the key, then open the gate
“When it’s wrong, find the wrong step and fix it.”
L6–L9
Combine them — a fold inside a run, carry a key past a hazard, a capstone
All four, reinforced
Then: endless, never-memorized practice

After the nine rungs, levels are generated, not authored — validated against the interpreter so they're always solvable, with the order shuffled so the action sequence can't be memorized. The partner aims each one at the child's least-developed skill. That's the transfer test made real: can they solve a level no one walked them through?

The AI Partner

A partner inside the play

A server-side Claude (Sonnet) reacts, narrates, and offers the right tool at the right moment — never an interrogation, never shame for a mistake. It's honest and readiness-aware: it gates progress on demonstrated mastery, not on attempts or time. The engine itself is deterministic, so the partner is one clean seam over a system that always works — even with audio off and the local stub.

Growth over engagement
No streaks, no timers, no leaderboards. Progress is mastery-gated — each level unlocks only after the last idea is demonstrated.
Voice you can read along to
An ElevenLabs voice speaks each line, and each word grows in time with the audio — an early-reading cue tying sound to the written word. Cached on-device for instant replay and zero repeat cost.
Readiness, not a fixed path
The partner decides when a child is ready for the next idea and aims generated practice at their weakest skill — building on what they already know.
A partner line with the word being spoken enlarged and highlighted in pink

As the partner speaks, the word being spoken grows and highlights — tying the sound to the written word

Non-Negotiables

What it never does

The constraints are the design. They're what keep it honest about building capability instead of farming attention.

No microphoneNo readingNo typingNo accountsNo adsNo streaks or timersNo walk tokenNo real-time inputNo turn/rotate tokensNever autocorrectedNever gated on time or attempts
Failure is never a dead end — every wrong plan is a revise, with one good nudge from the partner, never the answer.”
How I Work

Built to be outgrown

Make It Go started as a parent's problem — nothing good for Zoe and Autumn before reading — and became a working instrument for a real question about AI and learning. The engineering reflects that: a pure, theme-agnostic interpreter under full unit test (128 tests), with a theme expressed as data so six packs share one engine and the play loop is never forked.

The AI lives behind one seam — a local stub for determinism and tests, server-side Claude for the warm partner — so the experiment stays honest and the game always works. Shipped and playable today, with the partner growing into the difficulty director next.

“The app is the instrument; the finding is the point. Built to be outgrown.”
Play it with a small person
makeitgo.org — free, no account, runs on tablet or laptop
Play it live