All work

Case study · iPhone, iPad and the web

Beaver Football

From the first line of code to the App Store in 17 days.

A 7-on-7 tail-flag football game for kids at Mudflat Field, played by the beavers of Beaver Ball. No tackles: a play ends when a defender pulls the cloth flag off a beaver’s tail. I designed and directed it; Claude wrote the code, one pull request at a time.

The teaser, made before launch.
  • 17days from the first line of football code to App Store approval
  • 3days to the first App Store submission
  • 152plays in the Playbook
  • 1,008recorded voice and sound takes
  • 22Game Center achievements
  • 13,150lines of football code, on top of Beaver Ball

The game plan

Four plays that built it

Beaver Football is the second Beaver game, after Beaver Ball, a softball game. Every Beaver game keeps the same rules: flat cartoon art drawn in code, kid-safe words, free with no ads, and anyone plays any sport.

Run

Fork the franchise

Beaver Ball had gone live on the App Store the day before. Beaver Football started as a fork of it, so the whole engine came along: the beavers built from code, the animator, the renderer, the booth, accounts, the Locker and the Shop. One commit stripped out the softball, and a new set of football rules went in its place, written as plain logic that unit tests can play a whole game of without drawing a frame.

Short pass

Draw everything in code

No model files. Mudflat Field, the bleachers, the log goalposts, the helmets and the shoulder pads (way too big, made of logs, lily pads and acorn caps) are all built in code with flat two-tone cel paint and ink outlines. Three.js draws it with WebGPU and falls back to WebGL, and Capacitor wraps the same game as an iPhone and iPad app.

Deep pass

Give it a voice

Peg and Stu call the game from the booth and Gavel Gert referees, in the same ElevenLabs voices they have in Beaver Ball. By launch the booth called players by name on every catch, drop, juke and flag pull, with jokes in the huddle, a “Hike!” on every snap and the Mudflat band in the menus: 1,008 recorded takes in all.

Trick play

Run the build like a sideline

I called the plays and Claude ran them. A coordinator split the work into threads, each Claude Code session took one task (the Locker, Career, Game Center, the listing) to a pull request with tests, and a session on my Mac built each TestFlight upload. I played every build on my iPhone and sent back what felt wrong.

The drive

Seventeen days, one drive

Every date comes from the game’s code history and its App Store record.

  1. KickoffOwn 5

    Saturday, October 24

    Softball to football in an afternoon

    The day after Beaver Ball went live, I wrote down the rules every Beaver game keeps and forked the repo. By the evening there was a playable drive at Mudflat Field, then a whole game with both teams on offense and defense.

    • A 7-on-7 tail-flag drive: no tackles, a play ends when a defender pulls the flag off a tail
    • A side camera from the east bank
    • Both teams get the ball: defense, the try after a touchdown, two halves and a shootout
    • Helmets, face masks and the funny shoulder pads
    The first build of Mudflat Field: a brown mud field with chalk yard lines, beavers lined up and four play cards: Run, Short pass, Deep pass and Trick play.
    Day one: Mudflat Field really was mud.
    The day-one side view: the Logrollers end zone painted blue along the left, beavers lined up in the mud and the play cards along the bottom.
    The first side view.
  2. 1st & 10Own 30

    Sunday, October 25

    A game a kid can pick up

    Football has a lot of buttons. I asked for “way fewer keys,” so the whole game moved onto one button: tap to pass where the gold arrow points, hold to throw harder, and your runner jukes and belly slides on their own. Easy became the default, made for kids.

    • The Playbook: 152 plays in packs, earned with Beaver Bucks, and a coach from Novice to Expert
    • A tutorial with Peg and Stu that waits for you
    • Green grass, plays drawn on the field, kickoffs and field goals
    • Easy, Medium and Hard
    • The Team Builder and Player Editor for seven a side
    • Its own app icon, App Store listing, iPad layout, Settings, Game Center and the Locker
    The game on a phone a day later: green grass, chalk lines, the gold pass arrow and a big Pass button.
    The field turned green.
    The Playbook: packs of plays like Starter Plays, Mudflat Basics and Rookie Camp, some yours and some free gifts.
    152 plays to unlock.
    The Locker: a beaver in a blue number 7 jersey trying on a gold tail flag, with shelves of flags, cleats, footballs and celebrations.
    The Locker, with the shop inside it.
  3. 2nd & 4Midfield

    Monday, October 26

    Everything a real app needs

    Monday was the ship-ready list, one task per thread: purchases, accounts, the modes that keep you coming back, and the App Store listing. That night I found the iPhone build was silent with the ring switch off, so the sound got fixed along with a new picture-grid home screen and a football loading screen.

    • In-app purchases: the Beaver Football Club and Star Packs of looks, never Bucks
    • Your account: a cloud save, Sign in with Apple and Delete my account
    • Career, the Tail Punt Derby, Daily challenges with the Two-Minute Drill, and Manager mode
    • The App Store listing, privacy answers and Game Center filled in
    Career: make your beaver and pick their job: quarterback, back or receiver.
    Career.
    The Tail Punt Derby: a punt in the air over Mudflat Field, punt 1 of 10.
    The Tail Punt Derby.
    Daily: today’s headline is the Two-Minute Drill, with three challenges and the streak below.
    Daily and the Two-Minute Drill.
    Manager mode: calling the plays from the sideline.
    Manager mode.
  4. 3rd & 2Opp 30

    Tuesday, October 27

    The booth learns everyone’s name

    Submitted to the App Store

    The last night before submitting was all feel: the booth calling players by name, weather that changes how a game plays, a camera that keeps every player on screen, and camera settings with a Steady option for anyone who gets motion sick. I pressed Submit at 1:47 in the morning. That afternoon Apple asked for a Terms of Use link for the Club subscription, and it was back in review two hours later.

    • Named play-by-play on every catch, drop, swat, pick, juke and flag pull
    • Game-day weather: wind, rain, snow and floods that each play differently
    • Camera views (Behind, Close, Broadcast, Sideline, Chalkboard) with sliders and Steady camera
    • Pause or leaving the app silences every sound
    A rainy game ends in a safety, Logrollers 0, Chompers 2, with the XP, trophy and Beaver Bucks earned.
    A rainy day at Mudflat Field.
    Settings: separate volumes for effects, the crowd and the booth voices, captions, the level and the camera.
    Settings, with captions and the camera.
  5. 1st & goalOpp 5

    October 28 to November 8

    Five testers who never get tired

    While Apple reviewed, a launch QA ran every mode as five different kinds of player, from the one who taps through everything to the one who tries to break the save. Their reports fixed real bugs, like Beaver Bucks coming back after a purchase when a save synced. Version 1.0.3 carried those fixes, the Mudflat band and a mute button, and went in on November 8.

    • Saves keep every spend and payout across devices
    • Kid-safe team letters on the score bug
    • The Mudflat band: three songs in the menus, soft under a game
    • A note in the app when a newer version is on the App Store
    • App Store preview videos recorded from real play
    A sheet of round Game Center achievement badges in the Beaver Football style.
    The Game Center badges.
    The Locker’s Packs shelf: the Beaver Football Club, the Golden Game Bundle, the Night Game Bundle and Star Packs.
    The Club and the packs.
  6. TouchdownEnd zone

    Tuesday, November 10

    Touchdown

    Ready for Distribution on the App Store

    Apple approved Beaver Football 1.0.3, seventeen days after the first line of football code. It’s free on the App Store for iPhone and iPad, and free to play in a browser.

Instant replay

Day one, then launch

The field

Day one: the field was brown mud with chalk lines.
October 24
Launch: mown green grass with stripes, the pines, the goalposts and the Chompers end zone.
November 10

The home screen

The first start card: team pick-lists and a wall of buttons.
October 25
The picture-grid home: a big Kick off! picture and tiles for Learn to play, the Tail Punt Derby, Daily, Manager mode, Career, the Locker and the Playbook.
October 26

Film room

Straight from the game

Every frame here is the real game, recorded in a browser, with the booth’s own voices. The teasers were made before launch, so they still say “coming soon.”

The App Store preview
The teaser, for phones
What’s new in 1.0.3

On the App Store

The listing

Six screenshots for iPhone and six for iPad, each a real moment from the game with one line on top.

App Store screenshot “Hike it, beavers!”: the start card with the teams, the modes and Kick off!App Store screenshot “Call the play”: the huddle with four play cards drawn as diagrams.App Store screenshot “Hit the open receiver”: a gold dotted pass line to a receiver downfield.App Store screenshot “Pull the flag. No tackles!”: a defender reaching for the flag on a runner’s tail.App Store screenshot “152 plays to unlock”: the Playbook’s packs.App Store screenshot “Build your dream team”: the Team Builder with team photos of the Lodge Logrollers and Mudflat Chompers.

What shipped

What’s in the game

One button

Tap to pass, hold to throw harder, and your runner’s jukes, spins and Belly Slides happen on their own.

Tail flags, no tackles

Every beaver wears a cloth flag on the tail. Nobody gets hurt; a play ends when the flag comes off.

A real playbook

152 plays across ten formations, unlocked with Beaver Bucks you earn by playing, and a coach with 26 lessons.

Six ways to play

Quick and full games, Career, the Tail Punt Derby, Daily and the Two-Minute Drill, and Manager mode.

A booth that knows you

Peg, Stu and Gert call the game by name in recorded voices, with captions for when the sound is off.

Made for kids

Easy by default, 9+ on the App Store, a grown-ups check before any purchase or link, and no ads ever.

Kick off! The home screen picture: beavers in helmets and huge shoulder pads lined up at Mudflat Field.

Final

Free on iPhone, iPad and the web

Beaver Football is free, with no ads. The Beaver Football Club and Star Packs of looks are the only things for sale, always behind a grown-ups check.

How the first game was made: the Beaver Ball case study

GOT A GOOD “WHAT IF”?

Let’s make
something matter.
waldo@youfoundwaldo.com Or leave a voice note Products. Collaborations. Problems worth solving for people.