I built a flashcard app to teach my three-year-old to read in Cantonese
星星認字 is a free flashcard app for parents teaching a small child traditional Chinese characters and Cantonese: 540 characters, recorded Cantonese audio, no quizzes. You can try it without an account.
Published
- #cantonese
- #projects
The first version of this app read each character aloud with whatever voice the phone had. On some phones that voice was Mandarin. On others there was no Cantonese voice at all. On the rest, a character with two readings got one of them, and I could not tell in advance which.
My kid is three. A three-year-old repeats what they hear, without checking it against anything. An app that says a character wrong one time in ten is worse than a paper card that says nothing.
So I rebuilt the sound, and kept going. The result is 星星認字 — roughly “Star Reading” — a flashcard app for parents teaching a small child traditional Chinese characters and Cantonese. It is free and has no ads. You can try it right now without an account.
What it is
There are 540 characters in nine themes: family, the body, nature, food, actions, school life, numbers and colours, Cantonese-only characters, and common words. Each card has one character, a picture, its Jyutping, and an example word in spoken Cantonese. Tap the card to hear it. A second button draws the stroke order.
You sit next to your child and flip through. They read the card out loud. If you think they know it, you hold down 認得 — “recognised” — and they get a star. The card then leaves the queue, so the pile in front of you is always the characters they have not learned yet.
The parent decides, not the app
There are no quizzes, no levels, and no leaderboard. I left them out on purpose.
The parent is already sitting there. I can hear whether my kid read 魚 or guessed it from the picture of a fish, and the app cannot. So the star count means exactly one thing: the number of characters a parent has confirmed.
I did add two things later, a review pile that brings confirmed characters back and a game where the child finds the matching character in a ring of look-alikes. Neither one keeps score, and neither one touches the stars.
Every sound is recorded ahead of time
After that first version, I stopped using the phone’s voice. All 540 clips are synthesised in advance with a Hong Kong Cantonese voice, so every phone plays the same file. Thirty-one characters came out wrong by default and had to be given their pronunciation explicitly.
Each card also shows only one reading. Many characters have a literary reading and a colloquial one, and the card picks the one that matches its example word — the way you would say it to a child, which is not always the one in the dictionary’s first line. A parent should not have to choose between two romanisations in the middle of a card.
Where the characters come from
516 of the characters are taken from the Hong Kong Education Bureau’s word list for primary schools, so what your child learns here is what school will ask for later.
The other 24 are characters school does not teach and Cantonese cannot be written without: 佢, 嘅, 咗, 啲, and their friends. If you read a Cantonese storybook to a child, these are on every page. They sit in their own theme, apart from the 516, so the claim about the school list stays true.
The full character list is public if you want to check it before you start.
What it does not do well
Stroke order follows the mainland Chinese standard, because that is the data I could get under an open licence. Hong Kong teaches a few characters differently. The app says so on the stroke-order screen, and I would rather tell you here too.
The pictures are AI-generated, one per card, in one cartoon style. They are there to give a three-year-old something to point at. Some are better than others.
There is no Simplified Chinese and no Mandarin pinyin, and I do not plan to add them. Plenty of apps do that already.
Try it
Open the trial and the first two themes work straight away, with nothing to fill in. Your progress stays in that browser, and moves into your account if you make one later. Accounts registered during the launch period stay free permanently.
If you would rather keep the phone in your own hand, there are printable cards. Each one has a QR code in the corner that plays the character in Cantonese.
It works on a phone, and you can add it to the home screen. Cards you have already seen still open without a connection.
The phone’s own voice is still in there, and it still reads some of these characters in Mandarin. The app no longer asks it. If your child is learning to read in Cantonese too, flip a few cards and listen.