CyIME is an Android input method developed and maintained by Cyletix. It runs on the Rime engine and is a fork of Xime. Chinese Pinyin, Shuangpin, Wubi, stroke, Cangjie and Zhuyin, plus Japanese, English and Spanish, handwriting, voice and photo text recognition all run on the device. It also has live captions for people who are hard of hearing.
Requires Android 9.0 (API 28) or later. Packages are ARM64 only.
- Download from Releases. Both packages are built from the same source and differ only in the bundled offline models:
- Lite
CyIME-<version>-arm64-v8a.apk: no voice, handwriting or prediction models; download them in "Extensions › Models" when needed. - Full
CyIME-<version>-full-arm64-v8a.apk: bundles the SenseVoice voice model, handwriting, speaker, prediction and 9-key phrase models, so it works offline right away. The streaming Paraformer model is not bundled; download it in the app if you want text while you speak.
- Lite
- Enable CyIME in the system settings and make it the current keyboard.
- Later updates: "Settings › About › Check for updates" downloads the same edition (lite or full) and hands it to the system installer.
On phones with Google services (Samsung, global models), apps from developers not registered with Google need a one-time "advanced flow" to install from 2027. Phones sold in mainland China and adb installs are not affected. See Google developer verification (Chinese).
Moving from the old
com.kingzcheung.xime: the install ID is nowcom.cyletix.cyime, so Android treats CyIME as a new app. Both can be installed side by side, and old data is not carried over.
Features marked "off by default" have to be turned on in the settings.
Chinese
- Full Pinyin on 26 keys, 9 keys and 14 keys, with the rime-ice dictionary. The 9-key keyboard can download a phrase model and a grammar model and picks words key by key in long sentences.
- Shuangpin: built-in Xiaohe, Shoudao, Ziranma, Zhineng ABC, Pinyin Jiajia and Microsoft layouts. Copy and edit them or build your own. Every Shuangpin scheme has a 14-key version; Xiaohe, Shoudao and your own schemes also have a 9-key version (off by default).
- Wubi 86 (bundled), Wubi 98 (download), stroke, Cangjie 5 and Zhuyin (Dachen keyboard), enabled in "Languages and schemes".
- Traditional Chinese output (Taiwan forms), fuzzy Pinyin, rare characters, mixed Chinese-English input and Chinese glide typing, all off by default.
- Candidates can show Pinyin or a Chinese/English gloss. The 26-key keyboard corrects extra or missing letters without putting the correction first.
- Dictionary page: your own phrases, import TXT / Sogou / QQ / Rime dictionaries, removed candidates, word lookup. Topic dictionaries for anime, games, programming, math and more (off by default).
Other languages
- English: word completion and glide typing.
- Japanese: romaji on 26 keys and a kana keyboard, with the rime-jaroomaji dictionaries.
- Spanish: ñ key, accented letters on long press, word completion (off by default).
Handwriting, voice, text recognition
- Handwriting: Chinese, English, Japanese (kana and kanji) and math formulas (recognized as LaTeX). Chinese, English and Japanese accept several characters at once. S Pen is supported.
- Voice: offline on the device. New installs use SenseVoice (punctuation, whole-sentence results). Download Paraformer to see text while you speak; Zipformer, X-ASR and Japanese models are also available. Hold the space bar to talk. You can also set your own online recognition service, which is used only after its test passes.
- Photo text recognition: take a photo or pick an image from the clipboard panel and get the text, offline.
Captions
- Turns speech around you into live captions in Chinese, English or Japanese, split by speaker; speakers can be named.
- Floating captions over other apps, call captions, caption history (search, share, kept 3 days by default), vibration when someone says your name. Captions have their own launcher icon.
Keyboard and look
- Docked, floating or split. The floating keyboard can be moved, resized and rotated; on tablets, pull the handle on top of the docked keyboard to make it float.
- Letter layouts: QWERTY, Colemak, QWJRTK, Cyletix10, a Typewise-style hexagon layout, or your own.
- Color themes, glass effect, your own picture as background, rounded / square / sharp key shapes.
- Rearrange the toolbar and menu by dragging; key sounds, vibration and swipe gestures are adjustable.
- Hardware keyboards: floating candidate bar, shortcut to switch languages.
Clipboard and sync
- Clipboard history, pinning, search, custom groups, export to TXT / Markdown / JSON; SMS codes show up in the candidate bar.
- Pair with CyIME for Windows (not public yet) by QR code to sync the clipboard both ways.
- Local backup and restore.
Settings
- Settings search (synonyms, typos, Traditional characters), device-based recommended setup, performance levels.
- Extensions: download schemes and models; import Lua plugins (
.xipk). The repo'splugins/folder has examples such as kaomoji, online speech recognition and WebDAV backup.
# Clone with submodules
git clone --recursive https://github.com/Cyletix/CyIME.git
# Or, in an existing clone
git submodule update --init --recursive
# Debug / release
./gradlew assembleDebug
./gradlew assembleReleaseNeeds JDK 17 and NDK 29.0.14206865. The build downloads rime-ice, the Japanese dictionaries, the stroke and Cangjie tables and the sherpa-onnx runtime, checks them against recorded SHA-256 digests and packs them into the APK. Day-to-day packages are built with packager.cmd in the repo root (double-click for the GUI, or pass arguments); presets are in scripts/packager/config.json, version rules in docs/packaging.md (Chinese).
Tech stack: Kotlin · Jetpack Compose · Material 3 · librime (JNI / C++) · ONNX Runtime · sherpa-onnx · OpenCV
- Forked from Xime (Kingz Cheung / kingzcheung and contributors) at upstream commit
9452b16on 2026-09-21. - To keep the code easy to compare with upstream, the source namespace
com.kingzcheung.xime, plugin IDs,xime.yaml/xime.custom.yamland the extension store protocol are unchanged; only the install ID is CyIME's own. See docs/cyime-identity.md (Chinese). - The author's earlier work: Cyletix-Keyboard (2024 keyboard layout research, where the Cyletix10 layout comes from) and ASRInput (desktop voice captions; CyIME's caption pacing follows it).
- Community Linux port: tuxKOH/CyIME, branch linux-desktop-preview (IBus Pinyin + desktop clipboard, maintained by tuxKOH). Linux forks are welcome, but I don't have the time to maintain a Linux version myself for now.
See CONTRIBUTING.md (Chinese): open an issue first, then a minimal pull request.
CyIME builds on the projects, data and models below. Thanks to all their authors. Full license texts and copyright notices ship in app/src/main/assets/NOTICE.txt, app/src/main/assets/licenses/ and the NOTICE files next to each scheme. In the app, see "Settings › About › Credits" and "Open source licenses".
| Project | Author | Used for | License |
|---|---|---|---|
| Xime | Kingz Cheung (kingzcheung) and contributors | CyIME's starting point: app framework, Rime integration, 9-key librime-t9, plugin system, handwriting and prediction | GPL-3.0 |
| rime-wubi (fork of KyleBing/rime-wubi86-jidian) | kingzcheung; KyleBing | Bundled Wubi 86 scheme and Wubi lookup in handwriting | Apache-2.0 |
| Xime models: ochwpro, predictive-text-small, predictive-text-base | Xime project | Chinese handwriting; prediction | ochwpro MIT; small Apache-2.0; base CC BY-NC-SA 4.0 |
| Project | Author | Used for | License |
|---|---|---|---|
| librime (via ximeiorg/librime) | lotem (佛振) and the Rime community | Input engine | BSD-3-Clause |
| librime-lua | hchunhui | Lua scripts in schemes | BSD-3-Clause |
| librime-octagram | lotem | 9-key grammar model | GPL-3.0 |
| librime-predict | Rime | Prediction | BSD-3-Clause |
| OpenCC | BYVoid (Carbo Kuo) | Simplified/Traditional conversion | Apache-2.0 |
| Boost, glog, yaml-cpp, LevelDB, marisa-trie, Snappy | Their authors | librime dependencies | BSL-1.0, BSD-3-Clause, MIT, BSD-3-Clause, BSD-2-Clause or LGPL-2.1, BSD-3-Clause |
| Project | Author | Used for | License |
|---|---|---|---|
| rime-ice (雾凇拼音) | iDvel (Dvel) | Dictionary and schemes for full Pinyin, Xiaohe Shuangpin, 9 keys, 14 keys | GPL-3.0 |
| RIME-LMDG (万象) | amzxyz | 9-key grammar model (download) | CC BY 4.0 |
| rime-stroke | 四季的風, 雪齋, Kunki Chou, 宋天 | Stroke scheme | LGPL-3.0 |
| Cangjie5 | Jackchows; 倉頡之友·馬來西亞 | Cangjie 5 table | MIT |
| rime-cangjie, rime-bopomofo | Rime | Reference for the Cangjie and Zhuyin schemes | LGPL-3.0 |
| McBopomofo (小麦注音) | OpenVanilla | Taiwan words, readings and frequencies (Zhuyin, Traditional output, Cangjie ranking) | MIT |
| rime-jaroomaji | lazy fox chan | Japanese schemes and dictionaries | Apache-2.0; dictionaries keep their own licenses: Mozc (BSD-style), JMdict / KANJIDIC2 (EDRDG, CC BY-SA 4.0) |
| Sogou cell dictionaries | Sogou and dictionary authors | Topic dictionaries downloaded in the app straight from Sogou | Copyright of their authors |
| rime-wubi98 | cz-archive | Wubi 98 (download) | GPL-3.0 |
| ECDICT | skywind3000 (Linwei) | Candidate gloss, English → Chinese | MIT |
| CC-CEDICT | MDBG | Candidate gloss, Chinese → English | CC BY-SA 4.0 |
| opus-mt-zh-en | Helsinki-NLP | Reference translations of common phrases in the gloss (generated offline on a PC) | CC BY 4.0 |
| FrequencyWords | Hermit Dave | Spanish word list | Code MIT; lists CC BY-SA 4.0 |
| ChaiPUA font | Tan Songchen (tansongchen) | Shows Wubi radicals and other extension characters (inherited from Xime) | Not stated in the font |
| Corpus | Author | Used for | License |
|---|---|---|---|
| LCCC (Large-scale Cleaned Chinese Conversation) | Tsinghua University CoAI group | 9-key phrase model, base prediction table, 26-key word frequencies | MIT |
| OpenSubtitles (OPUS) | opensubtitles.org; OPUS | Spoken part of the 9-key phrase model | Not stated |
| Natural Language Corpus Data | Peter Norvig | English glide word and word-pair frequencies | MIT |
| Cornell Movie-Dialogs Corpus | Cristian Danescu-Niculescu-Mizil, Lillian Lee | Spoken word pairs for English glide | Public research data |
| MathWriting | Training the formula handwriting model | CC BY-NC-SA 4.0 |
| Project | Author | Used for | License |
|---|---|---|---|
| sherpa-onnx | k2-fsa (Next-gen Kaldi) | Speech recognition, VAD and speaker runtime; ONNX exports of the voice models | Apache-2.0 |
| ONNX Runtime | Microsoft | Inference for handwriting, prediction, text recognition | MIT |
| Silero VAD | Silero | Voice activity detection | MIT |
| SenseVoice | Alibaba FunAudioLLM | Speech recognition (multilingual, whole sentences) | FunASR model license (attribution, keep the model name) |
| Paraformer | Alibaba DAMO Academy FunASR | Streaming Chinese-English recognition | Apache-2.0 |
| Zipformer Chinese | k2-fsa | Streaming Chinese recognition | Apache-2.0 |
| X-ASR zh-en | GilgameshWind | Chinese whole-sentence results (download) | Apache-2.0 |
| ReazonSpeech k2 v2 | Reazon Research | Japanese recognition | Apache-2.0 |
| 3D-Speaker CAM++ | Alibaba 3D-Speaker | Telling speakers apart in captions | Apache-2.0 |
| PaddleOCR PP-OCRv5, RapidOCR | PaddlePaddle; RapidAI | Text recognition models and their ONNX versions | Apache-2.0 |
| OpenCV | OpenCV | Image processing for text recognition | Apache-2.0 |
| KaTeX | KaTeX authors | Rendering handwritten formulas | MIT |
| UER-py Chinese RoBERTa | UER team | 9-key sentence scoring (retired; the vocabulary still ships) | Apache-2.0 |
Kotlin, Jetpack Compose and AndroidX (including CameraX and Room), Material Components, OkHttp, Coil, kaml, kotlinx.serialization, ZXing (pairing QR codes), exp4j (calculator) and Apache Commons Compress are Apache-2.0; LuaJ (plugin runtime) is MIT; sora-editor (scheme file editor) is LGPL-2.1.
CyIME's interaction, look and key layouts drew on these products and schemes:
- Samsung Keyboard: overall keyboard interaction and look.
- Gboard: keyboard interaction and look, such as the large-screen toolbar.
- Typewise: hexagon layout.
- Colemak (Shai Coleman): the Colemak letter layout.
- Shoudao Shuangpin (首道双拼): the Shoudao key map.
- Xiaohe (flypy.cc), Ziranma, Zhineng ABC, Pinyin Jiajia and Microsoft Shuangpin: the built-in Shuangpin key maps.
- Trime and fcitx5-android: how other Rime-based Android input methods do things, used for comparison.
GPLv3. Upstream code remains copyright of its authors; the changes in this fork are maintained by Cyletix. The "Xime" name, logo and other brand assets are not covered by the GPLv3; see TRADEMARKS.md. Third-party components, data and models are distributed under their own licenses, listed in the credits above and in app/src/main/assets/NOTICE.txt. Note that the base prediction model (CC BY-NC-SA 4.0) and the formula handwriting model (trained on MathWriting, CC BY-NC-SA 4.0) may not be used commercially.