Sneaking vocabulary lessons into your IME candidate bar
A Rust-based Chinese IME that treats your daily typing as a language lesson, because opening a study app is a chore.

What it does
Qingjian is a cross-platform Chinese IME written in Rust. As you type pinyin or shuangpin, it surfaces Chinese candidates next to a single translation in your target learning language—English, Japanese, or others. A local small model re-ranks whole-sentence candidates, and the entire pipeline runs offline.
The interesting bit
The project treats the input method as a behavioral Trojan horse: it piggybacks language exposure onto an action you already perform hundreds of times a day rather than interrupting you with quizzes or complex UI. The cross-platform engine keeps platform-specific code limited to OS bindings.
Key highlights
- Fully offline by default: conversion, ranking, and translations all happen locally with no accounts or telemetry.
- One auxiliary language at a time: each candidate shows exactly one translation to keep the interface clean.
- Optional cloud association can be pointed at your own AI provider; it ships disabled by default.
- macOS is the most mature platform; Windows is in beta via TSF; Linux support via IBus or Fcitx is planned.
- Licensed under GPL-3.0-or-later, though the README notes the project is still a beta and APIs may shift.
Caveats
- The project is explicitly labeled a test build; the README warns that APIs and structure may change significantly.
- Linux support is listed in the architecture but comes after macOS and Windows in the development queue.
- Reverse input modes, such as typing Japanese to learn Chinese, are described as future work.
Verdict
Try it if you type Chinese daily and want to mine your keystrokes for vocabulary. Skip it if you need a stable, mature IME or primary input in a non-Chinese language.
Frequently asked
- What is qingjian-team/qingjian?
- A Rust-based Chinese IME that treats your daily typing as a language lesson, because opening a study app is a chore.
- Is qingjian open source?
- Yes — qingjian-team/qingjian is open source, released under the GPL-3.0 license.
- What language is qingjian written in?
- qingjian-team/qingjian is primarily written in Rust.
- How popular is qingjian?
- qingjian-team/qingjian has 1.2k stars on GitHub.
- Where can I find qingjian?
- qingjian-team/qingjian is on GitHub at https://github.com/qingjian-team/qingjian.