My kids have been building things with Claude Code, and I want to share what they've made — not because I helped them (I mostly stayed out of the way), but because it's genuinely impressive what happens when you remove the barrier between having an idea and being able to build it.
Holden started it. He sat down with Claude Code, had an idea for a baseball analytics app, and just started building. Within a couple of hours he had something working. Then he kept going — iterating, adding features, refining. Once Cora saw what he was doing, she wanted in. Before long they were both at the kitchen table, each with a laptop, each deep in conversation with Claude about their own projects.
These aren't tutorials or homework assignments. These are projects the kids wanted to make. A baseball analytics app. A space game. A cyberpunk action game. A music program. Pong. A racing game. Each one started the same way: an idea, a terminal, and a conversation.
Apex Analytics — Holden's MLB App
Holden is obsessed with baseball, so naturally his first project was a way to find undervalued players. Apex Analytics is a full-stack MLB roster analytics platform, and it's the project that kicked off all of this.
The backend is a Python data pipeline that pulls from both the MLB Stats API (traditional stats like batting average and ERA) and Baseball Savant's Statcast data (exit velocity, barrel percentage, expected batting average, called-strike-plus-whiff rate). It processes rosters for all 30 MLB teams and outputs JSON files.
The frontend is a Next.js app with React, TypeScript, Tailwind CSS, and Framer Motion for animations. Every team has its own page themed with accurate MLB brand colors — no generic fallbacks. The app features sortable roster tables, animated standout performer carousels, a global player search, and league-wide standings with three view modes.
This project is a great example of how iteration works with Claude Code. Holden didn't sit down and design all of this up front. He started with the simplest version — pull some stats, show them on a page. Then he wanted team colors. Then sortable tables. Then he asked "can we figure out which players are undervalued?" and that became the sleeper detection algorithm: flagging hitters based on the gap between their expected and actual batting average, low BABIP, or untapped power potential. Pitchers get flagged for high CSW% with elevated ERA, suggesting they're better than their results show. Each feature was a conversation — "what if we added this?" — and Claude would help him build it, test it, and move on to the next idea.
He kept going. A rookie prospect finder that scores young players on a 0-100 scale using weighted Statcast metrics. Trade grading that evaluates recent transactions and assigns letter grades. A league insights page that surfaces the top performers, sleepers, and rookies across all 30 teams.
This is a real web application with a real data pipeline, built by a kid who wanted to find undervalued baseball players.
Cora's Space Run
Once Cora saw Holden building, she wanted to make a game. She started with a simple concept — a spaceship dodging obstacles — and iterated from there, one conversation at a time.
The first version was basic: a ship, gravity, thrust, and rocks flying at you. But each session with Claude added something new. "Can we add coins?" Then a shop to spend them in. "What about different ships?" Then 9 unlockable ships, each with a unique passive ability — one reduces gravity, another boosts coin value, another shrinks your hitbox. "Can I have power-ups?" Then 11 upgrade categories with multiple levels each.
Built in Godot 4.4 using GDScript, the game now has five visually themed sectors (Asteroid Belt, Nebula Zone, Ice Field, Solar Storm, Deep Void) that unlock as you fly further, each with distinct obstacle patterns and color palettes. She also built a full racing mode with a four-tier cup system (Bronze through Platinum), where you race against AI opponents with varied skill levels. Entry fees, placement points, standings — it's a complete competitive loop on top of the core arcade game.
The whole thing is pixel art at 320x180, upscaled to 720p. Save data persists between sessions. Nearly 2,500 lines of GDScript across 27 files. None of it was planned from the start — it grew through iteration.
EIDOLON: Ghost Circuit
This is Cora's more ambitious project — a cyberpunk action-platformer called EIDOLON: Ghost Circuit, also targeting Godot 4. It's currently in the design and asset phase, with a complete game design document and initial pixel art assets created in Aseprite.
The scope of the design is remarkable. The story follows Kade Vance, a cybernetic repair technician with a rogue AI implant called Sable, hunted by a megacorporation through a vertical neon city called Neo-Erebus. The GDD covers a five-act narrative, ten levels across four acts, five boss encounters, a full progression system with three upgrade trees, and detailed specifications for movement mechanics (wall-runs, air-dashes, slides) and a hacking minigame system.
Each of the ten levels is designed with its own traversal mechanic, combat twist, environmental hazard, and visual theme — from escaping a black clinic through vent shafts to a zero-gravity prototype graveyard to the final battle atop a corporate tower.
She's still in pre-production, but the design document alone shows a level of creative ambition and systems thinking that I didn't expect. And it shows another side of working with Claude — it's not just a code generator. Cora used it as a design partner, bouncing ideas back and forth, fleshing out game mechanics, building a world.
MusicContextApp
Holden's other major project is a native iOS app written in Swift 6 with SwiftUI that recommends music from your Apple Music library based on what you're doing right now. Not based on what you liked last week — based on whether you're running, driving, sitting at a desk, or walking outside in the rain.
The app fuses data from eight sensor streams: motion detection (CoreMotion), location (CoreLocation), weather (WeatherKit), heart rate (HealthKit), battery level, Bluetooth device detection (are you wearing headphones? connected to a car?), time of day, and recent listening history. It converts all of this into an 11-dimensional feature vector and scores every song in your library against eight factors: BPM match, energy match, genre affinity, mood inference, time-of-day matching, and more.
The learning system is genuinely sophisticated. It clusters your context into categories like "exercise_morning_indoorHeadphones" and learns independent preference weights for each cluster. Skip a song and the weights adjust down; listen all the way through and they adjust up; replay a song and it gets a double boost. There's a cold-start system that blends default weights with learned ones until you've generated enough feedback.
This one grew through iteration too — starting with basic music playback, then adding one sensor at a time, then the scoring engine, then the learning system. Each piece built on the last. Nearly 5,700 lines of Swift. Zero third-party dependencies — purely native Apple frameworks. SwiftData for persistence, Combine for reactive sensor streams, and strict Swift 6 concurrency throughout.
Pong with Twists
Holden built this one as a quicker project between the bigger ones. It's a single HTML file — 2,500 lines of vanilla JavaScript, HTML5 Canvas, and Web Audio API. No frameworks, no build tools, no dependencies. Open the file in a browser and you're playing Pong.
But it's not just Pong. There are seven arenas with different obstacle layouts (pillars, corridors, fortresses, a diamond, and "The Gauntlet" with eight pillars). Six power-ups spawn during play: speed boost, paddle size changes, multi-ball, curved trajectories, and ghost mode (the ball goes nearly invisible). On top of that, eight random "twist" events activate mid-game — gravity, portals, reversed controls, wind, lightning teleportation, zero-G.
There's a three-round tournament mode against named AI opponents (BYTE, GLITCH, NEON) with increasing difficulty. A coin-based shop lets you buy custom paddle and ball skins. The visual style is retro-cyberpunk with CRT scanlines, glow effects, and procedurally generated sound effects.
The AI predicts ball trajectories including wall bounces, and its accuracy scales with tournament difficulty. The whole thing runs with a particle pool, cached glow overlays, and smooth 60fps gameplay.
Velocity Racing
Holden's most technically ambitious project is a full 3D racing game built in Godot 4.6 with GDScript. Four racing disciplines: street racing, Formula 1, desert rally (Baja), and NASCAR. Every car and every track is procedurally generated — no imported 3D models. The geometry is built at runtime from mathematical curves using ArrayMesh and SurfaceTool.
There are 44 car variants across the four modes, each with defined physics properties: mass, torque curves, aerodynamic drag and downforce, brake bias, and a three-stage drift model. The cars have procedural engine sounds synthesized from oscillators mapped to RPM, with backfire effects on deceleration.
The track system is equally detailed. Banked ovals, technical circuits, and 15-25km point-to-point desert courses — all generated procedurally with proper collision meshes, checkpoint gates, and AI racing lines. The AI follows Path3D curves with lateral offset variation, speed-dependent look-ahead, and rubber-banding based on position relative to the player.
Each mode has its own championship season with authentic-feeling points systems: FIA-style for F1, Cup Series scoring for NASCAR, SCORE International for Baja. There's a garage with car stats, livery customization, and split-screen multiplayer.
Over 16,500 lines of GDScript across 50 files. The physics runs at 120Hz for vehicle stability.
What This Means
None of these projects required the kids to already know how to code. Some of them picked up concepts along the way — Cora now understands state machines and game loops, Holden can talk about API data pipelines and sensor fusion — but the starting point wasn't knowledge. It was curiosity.
The thing that made this work wasn't just that Claude Code can write code. It's that it enables a fast, natural cycle of iteration. You start with the simplest version of your idea. You get it running. Then you say "what if we added this?" and you're off. Each conversation builds on the last. The project grows organically, shaped by the builder's interests rather than a predetermined plan.
That's the opposite of the traditional path, which is: learn a language, learn a framework, struggle through documentation, build something small, gradually work up to something real. That path works, but it takes years and filters out most people along the way. More importantly, it front-loads all the hard stuff before you ever get to the part that matters — making the thing you actually want to make.
Claude Code inverts it. You start with what you want to build, and the tool meets you where you are. A kid who loves baseball builds an analytics platform. A kid who loves space builds an arcade game. The ideas come first, the implementation follows, and the iteration keeps it moving. You're never stuck staring at documentation wondering how to get started. You're always building.
I'm not suggesting these projects are perfect or production-ready (well, Holden's analytics app might be). But they're real. They have save systems, progression mechanics, data pipelines, sensor fusion, AI opponents, physics engines. These aren't toy projects — they're the kind of thing that would take an experienced developer weeks to build. And they got there not through some grand plan, but through hundreds of small iterations, each one a conversation between a kid and an AI that met them where they were.
The kids don't think of themselves as programmers. They think of themselves as people who build things. I think that's exactly right.