All the drills

27 drills. Tap one to try it.

CV Decoding (any script) — glyph to sound via IPA
CV Decoding (any script) — glyph to sound, audio choices
CV Decoding — Hindi
CV Syllable Drill
CV — teach then quiz
English Grapheme-Phoneme Correspondence
Grapheme-Phoneme Correspondence (any orthography)
Hear four syllables - build that order
IPA onboarding (Tom 2026-08-06). Comes after single letters and after sound-in-words.
Hear four syllables in order - pick that order
IPA onboarding (Tom 2026-08-06). Comes after single letters and after sound-in-words.
IPA Sounds — Inside a Syllable
IPA onboarding (Tom 2026-08-06): the step AFTER learning single letters
Identify Devanagari Glyphs
Identify Glyphs
Identify Glyphs (letter shown, pick the sound)
Identify IPA Symbols
Japanese case particles — what job a word does
paradigm-trspecs (Iterciter): the drill types Tom asked for over the subgroup data Grammar builds (dev/spec/paradigm-drill.md). First real build, Japanese case particles, per Tom's own choice of prototype language.
Meet a letter
IPA onboarding. The FIRST thing a learner sees of a script -- before any question is asked.
Repeat After Me — spoken production with self-comparison
Russian case markers and prepositions — what job a word does
paradigm-trspecs (Iterciter): the drill types Tom asked for over the subgroup data Grammar builds (dev/spec/paradigm-drill.md). Built against Grammar's real ru_case_markers subgroup (ru/grammar/paradigms.json), which is itself the language-specific instance of the Case dimension named in tglx's own features.json dims block (dims.case: NOM/ERG/ABS/ACC/DAT/GEN/INS/ABL/LOC/VOC/DIR/OBL, 'what job the noun is doing in the sentence') -- same ontology, same design as the first build (paradigm-ja-case, Japanese case particles); this is the second language for the same grammar category, per paradigm-drill.md Task 3 ('apply it to every language we hold').
Sanskrit masculine -a stem — one, two, or more than two
paradigm-trspecs (Iterciter): the drill types Tom asked for over the subgroup data Grammar builds (dev/spec/paradigm-drill.md). Third build (after ja_case_particles, es_articles); the smallest real test of Grammar's own rule (commit 16b61394): a contrast set is a SLICE of a grid table -- holding case fixed (NOM) and varying number gives the three endings that really compete for the same slot.
See It, Say It, Hear Both - read a symbol aloud and judge yourself
Spanish articles — el, la, los, un, una
paradigm-trspecs (Iterciter): the drill types Tom asked for over the subgroup data Grammar builds (dev/spec/paradigm-drill.md). Second build (first was ja_case_particles); the one dev.py names in paradigm-trspecs's own CHECK.
Spell What You Hear — IPA
IPA onboarding. The productive side: once a learner can pick a syllable and read one, this asks them to WRITE one from its sound.
Which one starts the same way?
The ear, before the eye. The second thing a learner meets, after glyph-familiarity and before anything that asks them to read.
Word-shape Decoding (CVC) - read a three-sound word
Word-shape Decoding (any script/lang) — CVCVC
Word-shape Decoding — Hindi (CVCVC)
Your sound, inside a syllable - hear it and pick it
IPA onboarding (Tom 2026-08-06): the step AFTER learning single letters