The problem
Telling an AI to build your app is a very fast way to learn nothing. It decides what the parts are, what they’re called and how they talk to each other, then hands you the finished thing. That works right up until it doesn’t.
What the parts are
You can name the app. You can’t name one piece inside it, because you never had to decide there was a piece.
How they fit together
Wiring the parts up is the actual skill. That’s the step that happened off-screen, in one go, without you.
Why it broke
Fixing something you didn’t design is guessing. So you paste the error back in and ask for another finished thing.
You can’t learn to build by watching something else build.
The other problem
The rest of it is that this stuff gets described as far harder than it is. Abstraction, composition, inheritance — those are the words people quit over, and every one of them is a plain idea with an intimidating name bolted on.
- Abstraction
- Name a messy chunk once, then use the name and forget the mess. That’s exactly what forging a block is.
- Composition
- Build big things out of small things you already trust. That’s the whole workspace, and you can open any of it.
- Inheritance
- Start from something that already works and add the bit that’s different, instead of building it twice.
None of this is hard. Some of it is just badly introduced.
What you do instead
Lessons here are problems, not tutorials. You get a palette of parts, an empty workspace and something to make happen — and how you get there is yours. When the palette really can’t do it, you describe the part you’re missing and the forge casts exactly one block, then stops. What you practise is the bit that carries over to any language you ever touch: breaking a problem into pieces, working out how they fit, and naming what each one does.
Palette
- Motion
- Pen
- Looks
- Control
- Sensing
- Operators
- Variables
Mine
- roof
- zigzag
+ forge a block
Workspace
The gold block is the only one this kid invented. They snapped it on themselves — the forge handed it over and stopped there.
Stage
Forge
Closed until you open it. Describe a block you wish you had and it asks you questions.
Forge a block
01
You get a problem
Not a tutorial to copy out. “Make it draw a square.” Solve it however you want — if you find a way we didn’t expect, you’re right and our checklist is wrong.
02
You get stuck on purpose
Stuck is where the learning is, so nothing unlocks itself. There’s one hint, you have to ask for it, and it points at where to look instead of handing over the answer.
03
You forge the part you’re missing
When the palette really can’t do it, describe the part you want. Three questions later the forge casts exactly one block and stops. Snapping it in is your job.
04
It goes on your shelf
Your shelf only ever holds things you made. There’s no library of other people’s blocks to import, because importing a solution is how you skip the part that teaches you.
- one block per forge
- nothing hidden, anywhere
- 12 nodes per block
- ages 9–14
- grown-ups hold the account
Open any of it
Every block opens. Open one of yours and you see the smaller blocks it’s made of; open those and you reach the ones Bloqy shipped. There’s no layer further down where the real code is kept — the blocks are the real code, and that tree is exactly what gets saved.
Block inspector
You made this on March 3rd. Here is what is inside.
open it
Five ordinary blocks and one thing it was told — the height. If one of those were another block you had made, you could open that too, and keep going until everything on screen is a primitive.
The same block, as stored
No source file sits behind this. The tree is the block.
{
"name": "roof",
"slug": "roof",
"params": [{ "name": "size", "type": "number", "default": 100 }],
"returns": "void",
"createdBy": "forge",
"body": [
{ "op": "motion.point", "args": { "direction": { "op": "lit", "value": 45 } } },
{ "op": "motion.move", "args": { "steps": { "op": "param", "name": "size" } } },
{ "op": "motion.point", "args": { "direction": { "op": "lit", "value": 135 } } },
{ "op": "motion.move", "args": { "steps": { "op": "param", "name": "size" } } },
{ "op": "motion.point", "args": { "direction": { "op": "lit", "value": 90 } } }
]
}A part you can’t open is a part you don’t understand yet.
It says no a lot
An AI that mints a block for every request destroys the exact skill this exists to build. So the forge checks first whether the parts you already have would do the job, and it’d rather send you away than make you something you didn’t need.
Forge conversation · saved and visible to a parent
Kid
can you make me a block that draws a square
Forge assistant
ASSEMBLY_HINT
You already have move and turn. Put a repeat 4 around both of them and you have a square. Want to try that first?
Kid
oh. ok let me try that
Forge assistant
ABANDONED
Good. Come back when you hit something the palette really can’t do — that’s when a new block earns its place.
No block was made and no credit was spent — credits only come off a forge that works. The same kid asked for a roof an hour later, which is two rafters and nothing in the palette does it. That one got forged.
For grown-ups
A parent buys Bloqy or a school runs it, and either way the account and every forge transcript belong to the adult. The parts that usually worry a grown-up about an AI product for kids are settled here by the architecture rather than by a policy page.
Only grown-ups hold accounts
You sign up. Your kids are profiles inside your account, so there’s nothing for them to sign into and no password for them to lose.
Children never enter personal information
No email, no password, no birthday, no photo. A nickname, an avatar and an age band — and the age band only sets the reading level.
Every forge conversation is yours to read
Nothing the AI says to your kid is hidden from you. Each transcript is stored and shown in your dashboard, including the times it talked them out of a block.
No sharing, no galleries, no messaging
Kids can’t publish anything and can’t contact each other. Bloqy is single-player on purpose — a community needs a moderation budget behind it.
Your data rights, working now
See everything your child has made, export the whole lot as one JSON file, and delete a child and everything attached to them from your own dashboard — no support ticket and no waiting. It’s designed around COPPA from the first line of code rather than bolted on afterwards.
Software isn’t that hard. Come find out.
Start free: one kid, three projects, 15 forges a month, no card. Building with blocks is never metered on any plan.