AnkiWeb
- Rating
- 0 (👍 0 · 👎 0)
- Updated
- 2026-06-19
- Anki versions
- 25.09.2~
- Description language
- en
AnkiWeb addon 1603467171
Generates tone-coloured RTGS, IPA, or Paiboon readings for Thai vocabulary cards, auto-injecting CSS/JS into templates with configurable fields, colours, and toggle shortcut.
Open on AnkiWeb GitHub Ask about alternatives
active
| Min Anki | Max Anki | Updated |
|---|---|---|
| 25.09.2 | + | 2026-06-19 |
Loading…
Generates tone-colored pinyin, bopomofo, and jyutping readings, simplified/traditional variants, and injects CSS/JS into Anki card templates for Chinese study.
Automatically fills Chinese flashcard fields, adding part-of-speech and Kangxi radical filling alongside existing Hanzi, Pinyin, English, Bopomofo, audio, examples, frequency, and tone colours.
Automatically fills Chinese flashcard fields with translations, pinyin/Jyutping, audio, characters, Bopomofo, rubies, frequency, example sentences, and tone coloring.
Generates AI-powered flashcards with word lemmas, contextual definitions, example sentences, and TTS pronunciation, plus CEFR-level reading stories from studied words.
Generates vocabulary cards from English headwords with definitions, examples, IPA, synonyms, translations, cloze, TTS, and optional mnemonic images via multiple AI providers.
Translates fields in shared Chinese decks between Pinyin, Zhuyin, IPA, and Gwoyeu Romatzyh, auto-detecting the source format.
<div align="center">
An Anki add-on for Thai learners — generates tone-coloured readings (RTGS / IPA / Paiboon) and injects CSS/JS into card templates.
</div>
/tɕʰan˩˩˦ tɕʰɔːp̚˥˩ kin˧ kʰaːw˥˩ pʰat̚˨˩ maːk̚˥˩ kʰrap̚˦˥/
Precise phonetic transcription with tone letters.
chǎn chɔ̂ɔp gin kâao pàt mâak kráp
Tone diacritics on vowels, doubled for length.
The addon's dictionary stores RTGS readings in a digit-suffix format (sa2 wat2 di1), where each digit maps to a Thai tone class. Readings can be displayed in two styles:
| Style | Example | Description |
|---|---|---|
marks (default) |
chǎn chóp kin khâao phàt mâak khráp |
Digits replaced with conventional tone diacritics on the syllable's vowel |
numbers |
chan5 chop3 kin1 khao3 phat2 mak3 khrap4 |
Raw digit suffix per syllable, as stored in the dictionary |
Tone colours always work from the underlying tone number regardless of which reading system or display style is selected. Switch between Reading systems and styles via Tools → Thai Reading Settings.
A demo page showing all display types, reading types, and tone colours is available in demo/index.html.

Access settings via Tools → Thai Reading Settings or through Anki's add-on config editor.
| Key | Type | Default | Description |
|---|---|---|---|
ReadingType |
"rtgs" | "ipa" | "phonetics" |
"rtgs" |
Default reading system |
FontSize |
int (1–200) |
75 |
Reading font size as % of base text |
ThaiTones |
[str; 5] |
["#78716C","#0F766E","#B91C1C","#D97706","#7C3AED"] |
Colours for tones 1–5 (Mid, Low, Falling, High, Rising) |
RtgsToneStyle |
"marks" | "numbers" |
"marks" |
Tone marks on vowels (sà) or digit suffix (sa2) |
AutoCssJsGeneration |
bool |
true |
Auto-inject CSS/JS into card templates |
ShortcutKey |
str |
"F9" |
Keyboard shortcut for toggle reading (set "" to disable) |
Profiles |
[str] |
["all"] |
Anki profiles the addon is active on |
UseFileReferences |
bool |
false |
Write CSS/JS as standalone files in collection.media |
ActiveFields |
[str] |
[] |
Entries: display;profile;noteType;cardType;field;side;readingType |
These populate db/thai_dict.sqlite:
| Dependency | Role |
|---|---|
thaiphon ≥0.6.0 |
Thai phonetic transcription engine — RTGS and IPA rendering, syllable analysis, tone detection |
thaiphon-data-volubilis ≥0.2.0 |
~84k word Thai pronunciation lexicon (optional but recommended) |
Run uv run python db/populate_dict.py to build the dictionary.
No additional pip dependencies. Uses PyQt6, aqt, and anki provided by the Anki environment.
| Tool | Purpose |
|---|---|
ruff |
Linter and formatter |
pytest |
Unit test runner |
pytest-anki2 |
Integration test fixtures |
ty |
Static type checker |
uv venv .venv
source .venv/bin/activate
uv sync
# Populate pronunciation dictionary
uv run python db/populate_dict.py
# Run checks
python dev.py lint # ruff linter
python dev.py typecheck # ty type checker
python dev.py test-unit # fast unit tests (no Anki)
python dev.py test # full test suite (needs Anki)
python dev.py build # .ankiaddon package
python dev.py ci # full CI pipeline
GNU AGPLv3 — see LICENSE.