Trainer for the hiragana and katakana alphabets, on desktop, tablet and phone. Built with Tauri 2 and Svelte 5, in cream paper and black ink.
See the roadmap for planned features and improvements.
|
|
|
Desktop |
Phone |
- Hiragana, katakana or both, in either direction, from single characters up to all 147 including the dakuon, handakuon and yoon rows, plus the katakana only tokushon
- Three question formats (text to text, audio to text, text to audio) and answers by multiple choice or typing
- Runs of 10 to 500 questions or one pass over the set, at three difficulty levels that decide how look alike the wrong answers are
- Optional time trial, per question and for the whole run.
- Chart view of every character grouped by sound type and row, tap a tile to hear it
- Score reports saved on disk, exported and imported as
.kt-reportfiles holding any number of runs. Easy migration of runs to other devices. - Responsive interface, the same app on a wide screen and on a phone
- Localization for 11 languges: Dutch, German, English, Spanish, French, Portuguese, Indonesian, Vietnamese, Thai, Chinese (simplified and traditional).
- Works on Linux, Windows, MacOS and Android.
https://arsalan-anwari.github.io/kana-trainer/
sudo dnf install ./kana-trainer-*.rpm # fedora, opensuse
sudo apt install ./kana-trainer_*.deb # debian 13+, ubuntu 24.04+
sudo pacman -U ./kana-trainer-*.pkg.tar.zst # archOr run apk/exe/dmg package with your OS package installer.
cargo install kana-trainerNeeds Node 22+ and Rust 1.77+, plus the GTK and WebKit development headers.
# fedora
sudo dnf install webkit2gtk4.1-devel gtk3-devel glib2-devel librsvg2-devel \
libsoup3-devel openssl-devel dbus-devel patchelf \
libappstream-glib rpm-build dpkg
# debian, ubuntu
sudo apt install libwebkit2gtk-4.1-dev libgtk-3-dev libglib2.0-dev librsvg2-dev \
libsoup-3.0-dev libssl-dev libdbus-1-dev patchelf \
build-essential curl wget file rpm
# arch
sudo pacman -S webkit2gtk-4.1 gtk3 glib2 librsvg libsoup3 openssl dbus \
patchelf base-devel rpm-toolsrpm-build/rpm/rpm-tools and dpkg are only needed for the .rpm and
.deb bundle targets, patchelf for bundling in general. On Arch dpkg comes
from the AUR.
git submodule update --init # vendor/kaizen-ui, the UI kit
npm ci
npm run tauri:dev # run the app against the vite dev server
npm run tauri:build # bundle for the current platform
npm test # unit tests
npm run test:e2e # playwright1to4picks an answer in multiple choiceEntersubmits a typed answer, submits the picked sound in text to audio, and moves on after feedbackrreplays the sound in audio questionsEscapeleaves the runShift+leftandShift+rightmove between pages.
- Character sounds from FUN Japanese Learning (CC BY 4.0). Upload available on Hugging Face.

