Lexiverse
Lexiverse - AI contextual reading engine for English learners. Your next article is your next review.
Create Anki flashcard decks for learning Cantonese — stroke-order writing practice, Jyutping, Traditional characters, and native TTS audio.
EducationJavaScript · HTMLGitHub @joistadOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Create Anki flashcard decks for learning Cantonese — stroke-order writing, Jyutping, Traditional characters, and native TTS audio
Taken from the repository README
Loading the full README.
Read the full README ↗Create Anki flashcard decks for learning Cantonese — stroke-order writing practice, Jyutping, Traditional characters, and native TTS audio.
A Cantonese adaptation of Anki-xiehanzi.
Live app: https://joistad.github.io/cantonese-writer/
.apkg deck using the Cantonese Writer note type.apkg file| Field | Content |
|---|---|
| Simplified | Traditional Cantonese character(s) |
| Traditional | Same as Simplified |
| Pinyin | Jyutping romanisation |
| Zhuyin | (empty) |
| Definitions | English definitions with tone-coloured Jyutping |
| Audio | [sound:yue-word.mp3] if audio was generated |
HanziWriter stroke data comes from hanzi-writer-data, which covers ~9,500 characters from Standard Chinese. Characters exclusive to written Cantonese are mostly absent from it.
For the most common of these, Cantonese Writer ships generated stroke data in stroke-data/. Each file is composed from existing hanzi-writer-data strokes (e.g. 喺 = the 口 of 唔 + a scaled 係); nothing is hand-drawn. The app and the card template use the official dataset first and fall back to these files. See stroke-data/README.md for the method.
Covered by generated data: 167 characters, including the most common Cantonese ones (佢 喺 咗 啱 冇 啲 嚟 咁 哋 㗎 搵 諗 嗰 噉 喎 攞 嗱 黐 啩 抌 孖 餸 冧 踎 揼 劏 𨋢 嚡 …). The full ranked list is in stroke-data/targets.tsv, and what is and isn't covered is in stroke-data/README.md.
嘅, 唔 and 係 were listed as unsupported in earlier versions of this README, but they have always been in the official dataset.
Any other character without stroke data is skipped when you add words, and the skipped words are listed so you know.
Existing decks: the fallback lives in the card template, which Anki stores with the note type when you first import a deck. Decks imported before this change keep the old template. To get the fallback, either generate and import a new deck, or copy the updated card template into Anki (Tools → Manage Note Types → Cantonese-xiehanzi → Cards).
.apkg generationThis project is a Cantonese adaptation of Anki-xiehanzi by @krmanik. Card templates, note type structure, and core .apkg generation logic are derived from that project.
Jyutping data from CantoJpMin by @hanleyweng.
Card template data is derived from Xiehanzi (MIT) and hanzi-writer-data (Arphic Public License).
Generated stroke data in stroke-data/ is derived from hanzi-writer-data and distributed under the same terms (Arphic Public License / LGPL-3.0).
Dictionary data from CC-CEDICT (Creative Commons Attribution-Share Alike 3.0).