Case · own product · EdTech
From the Korean alphabet to Korean as it’s really said.
Korean is spelled one way and spoken another: 감사합니다 is said 감사함니다. Hangul Hero teaches the 40 letters, then X-rays 240 everyday phrases so you see every sound change. On Android and, after a native port written in five days, on iPhone.
Hangul HeroAndroid · iPhone · free, optional Premium · works offline
Six screens from the store listing
-
Read Korean in days A clear path from your first letter -
Speak real Korean 240 phrases, every sound change explained -
See how Hangul works Visual rules, block by block -
All 40 letters with audio Basic, complex and double -
Learn words you’ll use Pictures, audio and smart review -
A few minutes a day Daily goals, streaks and badges
- 10K+
- downloads on Google Play
- 240
- phrases, every sound change explained
- 40
- letters, strokes generated from the font
- 5 days
- to write the native iOS port
- 2,500+
- automated tests across both apps
Guess how Koreans actually say it
Three everyday phrases. Pick the pronunciation you’d expect, then see the X-ray: the written blocks, the spoken blocks and the rule that turns one into the other.
If you read letter by letter, you’ll pick the spelling. That gap is exactly what the app is built to close.
괜찮아
Are you okay? / I’m okay
How is it said?
1찮아 → 차나 ㅎ goes silent before a vowel, and the final ㄴ slides onto the next syllable, which starts with a silent ㅇ.
감사합니다
Thank you
How is it said?
1합니 → 함니 Sounds turn nasal: before ㄴ or ㅁ, a final ㅂ becomes ㅁ. Read letter by letter it’s “hap”; every Korean says “ham”.
같이 가자
Let’s go together
How is it said?
1같이 → 가치 ㅌ slides onto 이 and turns into ㅊ. “ga-ti” is the classic slip: moving the letter over isn’t enough here.
괜차나 · 감사함니다 · 가치 가자
Three phrases, three sound changes.
The app X-rays 240 phrases like this, with nine rules, slow audio and a note wherever grammar overrides the rules.
Hangul is a system, so teach the system
Hangul was designed: letters stack into square blocks, one block per syllable, in a fixed order. Learn that order and you can sound out any word in days. The app teaches the system first, then the letters inside it.
Then real Korean, the way it’s spoken
Reading letters isn’t speaking. Phrase X-Ray takes what Koreans actually say in a café or a K-drama and shows, block by block, where the sound moves away from the spelling.
How the pieces fit
Two native apps and a website, no backend. What they share is the pronunciation engine and its golden test set, so a phrase is said the same way everywhere.



Six decisions behind the app
- 01Teach how it sounds, not only how it’s spelled Read letter by letter, 감사합니다 comes out as “gam-sa-hap-ni-da”. Nobody says that. Phrase X-Ray shows the written blocks, the spoken ones and the rule in between.
- 02An engine checked against golden pairs The first version worked syllable by syllable and failed 52 of 147 golden pairs. The rewrite splits blocks into letters, applies rules across the whole phrase, then romanizes. Order matters: 독립 → 동닙 needs ㄹ→ㄴ before ㄱ→ㅇ.
- 03Port the behaviour, not the code Ten analysis documents described what the Android app does; a plan of about 120 tasks in ten phases rebuilt it in SwiftUI, reusing modules from my Hebrew iOS app. 140 commits in five days; on the App Store since 7 November 2026.
- 04Everything ships in the app Content moved from Firestore into bundled JSON, and all audio is in the package. No server, no loading spinners, works on a plane.
- 05A paywall after value, rewarded ads only The launch paywall now waits for the third launch and a finished first lesson, at most once a day (it used to show up to three times a day from the second launch). Ads are opt-in rewards, never interstitials.
- 06A website made of tools hanguledu.com runs the same engine, ported line by line to TypeScript and tested against the app’s golden set, so the site’s phrase pages and the app never disagree.
Engineering details learners never see
One picture, the whole promise
The store banner shows the app’s path in one glance: the alphabet on the left, a real phrase X-rayed on the right. Every screenshot leads with what you’ll be able to do.
Honest gaps
- Monetization is the open problem: subscription purchases are still rare. Paywall timing is the current experiment.
- The interface is English only on both platforms.
- The engine doesn’t yet handle ㄴ insertion (꽃잎), ㄼ exceptions (밟다) or words with two accepted readings (맛있다). Hand-set overrides cover the phrases that need them.
- The Android audit still has 19 of 61 findings open.
An app on both stores without doubling the budget
A second native platform in days, not months: document the behaviour, plan the port, reuse proven modules, and test the shared logic against one golden set.
Read a few blocks, then let’s talk.
Free on Google Play and the App Store. Building a learning app, or need it on the other platform too?