Sam Rowntree's face over the years, from baby photos to today, with a brief LEGO phase

Me, through the years. Yes, including my LEGO phase.

Hi, I’m Sam Rowntree

I turn “I wish…” into apps, gadgets and games.

I design and build mobile-first products, from wearable firmware to SwiftUI apps to the web. Every one started with a real person and a real problem.

My son wanted a gadget from a TV show. My wife wanted fairer exams. I wanted to learn the Rubik’s cube without the adverts. So I built them all, and learnt something every time.

The projects

Everything’s better in your pocket.

Most of what I make lives on a phone, or talks to one. Tap an app to jump to its story, or just keep scrolling.

Sam Rowntree's face over the years, from baby photos to today, with a brief LEGO phaseSamMaker of things for small screens and small people.
PeppySpeedcubeExamLuckFresomaBirthGames

Wearable AI companion · ESP32 + iPhone

Peppy

A voice-activated dinosaur expert that lives on your wrist.

Prototype, firmware v2.2

Concept render of a chunky green wristband gadget with a screen, worn on a child's arm
01The dreamA concept render of a chunky, kid-proof wristband.
Early prototype: a small touchscreen dev board held to a block of foam with two rubber bands
02Prototype oneA dev board, a block of foam and two rubber bands.
03Testing on the toughest criticFirst conversations with the prototype.
04New dinos, liveFacts and pictures made in the app, beamed to Peppy over Bluetooth.
05Dino Lab, for grown-upsLibrary, voice, play limits and every question asked.
06Fearless updatesFirmware over Bluetooth, with automatic rollback. Sped up 2.5×.

The story

My son saw a gizmo on a TV show and asked if he could have one. It didn’t exist, so I built it.

Peppy is a wearable with a microphone, speaker, touchscreen, memory, WiFi and Bluetooth. Ask it a question and it answers out loud, in a voice and personality the grown-ups choose. It runs on its own, and it’s managed from Dino Lab, a parent app on iPhone where you can add new dinosaurs, set a daily play limit and read back every question your child asked.

Built with

  • ESP32-S3
  • C / ESP-IDF
  • LVGL
  • Gemini voice + TTS
  • SwiftUI
  • Core Bluetooth
  • OTA + rollback

What I learned

  1. Updates must be unbreakable

    New firmware arrives over Bluetooth. If an update fails or the connection drops, Peppy rolls back to the previous version automatically. A toy a child loves can never turn into a brick.

  2. Design the protocol, not a pile of messages

    I wrote a small framed Bluetooth protocol with chunked transfers, CRC checks and resend-on-ack. Pictures, facts and settings sync reliably, even mid-play.

  3. Parents get control, kids get magic

    The PIN, play limits, personality prompt and question log all live in the app. That leaves the gadget free to be simple and joyful.

  4. Prototype with bubble wrap

    The first wearable was a dev board strapped to foam with rubber bands. It was enough to find out what a child actually does with it before designing anything prettier.

iOS · SwiftUI · Core Bluetooth

Speedcube

Learn to solve the Rubik’s cube, then get fast. Without an advert in sight.

In personal testing

01The cube is the controllerEvery twist mirrored live on screen. The cube drives the app.
02Learn, time, trainLessons, scrambles, and where every second went.

The story

People expect me to be able to solve a Rubik’s cube, so I decided it was time I learnt. I muddled through online tutorials, but the adverts made it infuriating, so I built my own app.

It teaches you to solve the cube from scratch, then trains you to get faster with an inspection timer, phase-by-phase splits and targeted practice. It also connects to GAN smart cubes, whose Bluetooth protocol is undocumented. Building on the community’s published encryption scheme, I captured raw traffic and worked out the message format myself.

Built with

  • Swift
  • SwiftUI
  • SwiftData
  • Core Bluetooth
  • Protocol reverse-engineering
  • Packet-replay tests

What I learned

  1. Reverse-engineering is detective work

    Capture, guess, verify, repeat. The app now detects each cube’s encryption key automatically and decodes the cube’s state bit by bit.

  2. Trust physics, not packets

    Only physically possible cube states are accepted, and turn messages are checked against position reports, so a dropped packet can’t scramble a solve.

  3. Real data makes the best tests

    The regression tests are built from real captured packets, so the protocol can’t quietly break.

  4. AI-assisted, human-verified

    I built it with directed AI-assisted development. The AI writes quickly, but tests and real hardware decide what’s actually true.

Web app · Free 11+ practice

ExamLuck

Free daily practice for the Kent Test, for every child and not just the ones who can pay.

Live

ExamLuck on a phone: a non-verbal reasoning question asking which shape comes next in a series
01Which shape comes next?Non-verbal reasoning, generated and verified.

The story

My wife is a teacher, and we both hate that getting into a better school can come down to what parents can afford: expensive app subscriptions, a phone to run them on, and tutoring after school. Even then, only the families who can pay get that chance.

ExamLuck is our way of doing something about it. Open the page and tap Start. There’s no account, no adverts and no payment, ever. It works on any phone, tablet or school Chromebook and keeps working offline. My friends’ 9–11 year olds tested it, and they loved it.

91
skills taught
18
mock papers
8
regions covered
£0
forever

Built with

  • Vanilla JS
  • Offline-first PWA
  • Service worker
  • Question generators
  • Validation engine
  • Spaced repetition

What I learned

  1. A wrong question is worse than no question

    Every question is verified so that exactly one option can be right. The last full run checked 660,000 generated questions and every hand-written item, with zero failures.

  2. Generate, don’t just write

    66 of the 91 skills create fresh questions forever, so children never run out and never just memorise answers.

  3. Diagnose, don’t just mark

    Wrong answers are matched to named misconceptions, and parents get a plain-English view of strengths and gaps.

  4. Kids want to play

    XP, streaks, badges and a daily challenge turn practice into something children ask to do.

iOS game · Swift

Fresoma

Hear a tone. Match it by ear. Get sharper every day.

01Turn the sound on for this oneSwipe to tune, let go to hear the target again.

The story

I wanted a way to practise pitch matching on the go, so I made it a game.

Put on headphones and listen to a tone, then swipe to dial in the frequency you heard. The faster you swipe, the faster it tunes, and the closer you get in Hertz, the better your score. There’s a daily tone for building a streak, a survival mode, five timbres from sine to choir, unlockable colour themes and more than forty achievements.

Built with

  • Swift
  • SwiftUI
  • AVAudioEngine
  • SwiftData
  • StoreKit
  • Notifications

What I learned

  1. Make the feel the feature

    Swipe speed maps to tuning speed: slow swipes give fine control and fast swipes scan. Getting that curve right mattered more than any menu.

  2. Small daily habits beat big sessions

    A one-tone daily challenge that resets at midnight brings people back more than a long feature list does.

  3. Fewer things, done well

    Black background, one waveform, bold type. No ads, no subscriptions, just one optional unlock.

Web app · Works offline

Birth Companion

A free labour and contraction tracker. No account, no subscription, no signal needed.

Live

01One tap, then breatheContractions, drinks, medication and a midwife summary.

The story

When we were expecting our second, we knew exactly what would help on the day. What was on the App Store wasn’t good enough, and it cost money.

So I built Birth Companion for anyone to use. Time contractions with one tap, get a live 5-1-1 check on when to call, log medication, food and drink, and hand the midwife a clear written summary. Everything stays on your phone.

Built with

  • Next.js
  • React
  • TypeScript
  • PWA
  • Offline-first
  • localStorage

What I learned

  1. Design for 3am, one-handed

    Big buttons, a vibration on every tap, a bigger-text option and confirm-before-delete, because nobody reads small print mid-contraction.

  2. Privacy by default

    No account, no server, no analytics. Data lives on the device, with backup and restore when you want it.

  3. Know your platform’s quirks

    Safari keeps Home Screen apps in separate storage from the browser, so the app nudges you to install it before you log anything.

Tabletop design · Paper prototypes

Board & card games

Before pixels, there was cardboard.

The Curious Curse card game: illustrated purple cards fanned out around the box
01Curious CurseA full deck, printed and played to pieces.
Pixel-art counter sheet of red spaceships with stats, for Vacuum Jockeys
02Vacuum Jockeys fleetHand-pixelled ship counters, ready to cut out.
Pixel-art counters for fighters, space stations and pirates in Vacuum Jockeys
03Bases & piratesSpace stations, fighter wings and pirates.

The story

Game design is where I learnt to prototype. Many nights and lunchtimes went into playtesting and tweaking, one rule at a time.

  • Calico’s Treasure

    A pirate race to the treasure.

  • Curious Curse

    A card game about a curse on a magical society.

  • Vacuum Jockeys

    A tabletop space epic on a black pin board, with thread trade routes and goat aliens who can only shoot backwards, because they only ever run away from danger.

Built with

  • Paper
  • Dice
  • Pins & thread
  • Many playtests

What I learned

  1. Playtesting is brutally honest

    Players find the broken rule in five minutes that you missed for five weeks. The same is true of app users.

  2. Cut what you love

    The best changes usually removed something.

  3. Balance the system

    Economies, combat tables and trade routes taught me to balance whole systems, which is the same skill behind streaks, XP and difficulty curves in apps.

The common thread

How I work.

Sam Rowntree's face over the years, from baby photos to today, with a brief LEGO phase

Thanks for scrolling all the way down!

Whether you’re hiring, building something brilliant, or have an idea that starts with “I wish…”, I’d love to hear from you.