Bukvohrai
ShippedAn alphabet app that generates its own pictures and voice, so a child learns letters through whatever they are obsessed with this month.
- Year
- 2026
- Stack
- React, Capacitor, Phaser, Firebase, Gemini, ElevenLabs, RevenueCat
- Link
- bukvohrai.ivanhabor.com
It started as a weekend build for my daughter. Every alphabet app I could find had the same problem: the pictures are fixed. If the child is currently obsessed with excavators, and the app insists that “E” is for elephant, you have lost them.
So the app makes its own. Pick a theme, and it generates an illustration, a four-line rhyme and a voice for every letter. Ukrainian first, because that is the alphabet we needed — all 33 of it, including the letters that apps ported from English quietly drop: Ґ, Є, Ї, Й, Ь.
What the child does
Tapping a letter opens a card: the letter, a word, a picture, and a recording that says “Літера А”. Under it sits a four-line rhyme with its own narration. If the rhyme or the picture misses, one button makes another. The card can also be overridden by hand — “С — Софі”, with a photo of your own daughter on it.
Every letter the child opens unlocks the games, and the games draw only on letters already seen, so the game card says how many more are needed. There are seven: find the letter by ear, build a word from tiles, memory, jigsaw, a scratch-off, a colouring page, and a runner where the child’s own avatar collects letters. No timers, no score to lose, only praise.
The Alphabet Workshop
The part the rest was built for. Choose a theme — dinosaurs, space, animals, vehicles, princesses, superheroes, or a sentence of your own — pick one of four visual styles, and add requests down to the letter: “I want A to be Astronaut”. The model invents the alphabet’s name, its colours, its mascot, 33 words and 33 rhymes. Pictures and narration are generated lazily, as the child opens each letter, rather than in one long wait up front.
Each alphabet becomes a separate world with its own progress out of 33, and a swipe moves between them. The built-in alphabet is free forever; a custom one is a one-off purchase. There is no subscription anywhere in the app.
What a parent is agreeing to
No ads, no ad SDKs, no analytics, no third-party tracking. Guest mode is the default, so nothing leaves the device until an adult signs in — and signing in exists only for purchases, generation and syncing a phone with a tablet. Anything that costs money is behind an arithmetic question a child cannot answer. Every generated rhyme is checked against a Ukrainian blocklist before it is shown, and anything that fails is replaced with a safe fallback. Deleting the account is one button in Settings, not an email to support.
Once a letter has been opened it works on a plane: letters, rhymes, pictures, narration and all seven games run offline. The 33 letter pronunciations ship inside the app and never need a network at all.
How it is built
React 19 and Vite wrapped in Capacitor 8 for iOS and Android, with Phaser behind the platformer and Three.js behind the animated character. Firebase handles auth, storage, sync and the Cloud Functions that call the models — no API key ever reaches the device. Gemini writes the rhymes and draws the pictures; narration comes from Gemini or ElevenLabs. Purchases go through RevenueCat.
Stage
Version 1.0 is on the App Store, free, for iPhone and iPad: Буквограй. Google Play is next.
The app and its landing page are Ukrainian only. The Ukrainian alphabet is the product, so there is nothing here to translate.