{"adoption": {"forks": 207, "observed_at": "2026-08-28T04:08:11.152988+00:00", "stars": 3589}, "canonical_url": "https://ross.abutalabs.com/products/yuyanime", "card": {"archived": false, "artifact_type": "application", "description": "语燕输入法-一款基于Rime定制开发的九键、全拼、双拼、手写、火星文等方案、支持悬浮、单手、数字行等键盘模式的中文输入法", "domain": ["mobile-development", "developer-tools"], "enriched": true, "function": ["nlp", "internationalization"], "health_score": 93, "homepage": null, "language": "Kotlin", "license": "BSD-3-Clause", "license_family": "permissive", "maturity": "active", "member_repos": ["gurecn/YuyanIme"], "name": "gurecn/YuyanIme", "platform": ["jvm"], "pushed_at": "2026-06-27T06:46:20+00:00", "repo": "gurecn/YuyanIme", "stars": 3589, "tags": ["input-method", "rime", "pinyin", "t9", "double-pinyin", "handwriting", "keyboard", "offline", "privacy", "localization", "android"], "topics": ["double-pinyin", "ime", "keyboard", "pinyin", "qwerty", "t9", "input-method", "rime"], "urls": [], "use_cases": ["type Chinese with a nine-key T9 keyboard on Android", "use double pinyin schemes like Xiaohe or Ziranma on my phone", "get a privacy-respecting offline pinyin IME with no cloud upload", "handwrite Chinese characters when I don't know the pinyin", "use a floating or one-handed keyboard while typing on the go", "customize themes and add a number row to the keyboard", "type decorative stylized Chinese text like Martian or flower-vine characters"], "what_it_is": "YuyanIme is a Chinese input method app for Android built on the Rime engine, supporting full pinyin, T9 nine-key, double pinyin, handwriting, and decorative text schemes. It emphasizes a clean, ad-free, fully offline experience with minimal permissions and rich keyboard customization like floating and one-handed modes.", "when_to_avoid": ["you need an input method for desktop platforms like Windows, macOS, or Linux", "you require cloud sync or predictive features that rely on network access", "you want extensive third-party plugin ecosystems or skin marketplaces", "you need languages other than Chinese and English"], "when_to_choose": ["you want a ready-to-use Rime-based Chinese IME on Android without manual configuration", "you need nine-key T9 input, which other Rime Android IMEs lack or implement poorly", "you prioritize privacy and fully offline input with minimal permissions", "you want handwriting, double pinyin, and decorative text in one keyboard"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/yuyanime", "repo": "gurecn/YuyanIme", "role": "main", "score": 82}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.152988+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:33:52.502655+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "042c667999f6096fea985f265e1054671c84789e72d410851b0a9e60a939657a", "fetched_at": "2026-08-28T04:08:11.152988+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gurecn/YuyanIme"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.152988+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:33:52.502655+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "042c667999f6096fea985f265e1054671c84789e72d410851b0a9e60a939657a", "fetched_at": "2026-08-28T04:08:11.152988+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gurecn/YuyanIme"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:33:52.502655+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "042c667999f6096fea985f265e1054671c84789e72d410851b0a9e60a939657a", "fetched_at": "2026-08-28T04:08:11.152988+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gurecn/YuyanIme"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.152988+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.152988+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.152988+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:33:52.502655+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "042c667999f6096fea985f265e1054671c84789e72d410851b0a9e60a939657a", "fetched_at": "2026-08-28T04:08:11.152988+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gurecn/YuyanIme"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.152988+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.152988+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:33:52.502655+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "042c667999f6096fea985f265e1054671c84789e72d410851b0a9e60a939657a", "fetched_at": "2026-08-28T04:08:11.152988+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gurecn/YuyanIme"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.152988+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.152988+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.152988+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:33:52.502655+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "042c667999f6096fea985f265e1054671c84789e72d410851b0a9e60a939657a", "fetched_at": "2026-08-28T04:08:11.152988+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gurecn/YuyanIme"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.152988+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.152988+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:33:52.502655+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "042c667999f6096fea985f265e1054671c84789e72d410851b0a9e60a939657a", "fetched_at": "2026-08-28T04:08:11.152988+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gurecn/YuyanIme"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:33:52.502655+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "042c667999f6096fea985f265e1054671c84789e72d410851b0a9e60a939657a", "fetched_at": "2026-08-28T04:08:11.152988+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gurecn/YuyanIme"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:33:52.502655+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "042c667999f6096fea985f265e1054671c84789e72d410851b0a9e60a939657a", "fetched_at": "2026-08-28T04:08:11.152988+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gurecn/YuyanIme"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:33:52.502655+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "042c667999f6096fea985f265e1054671c84789e72d410851b0a9e60a939657a", "fetched_at": "2026-08-28T04:08:11.152988+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gurecn/YuyanIme"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 89, "longevity": 59, "rhythm": 86}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 831, "days_push": 67, "days_rel": 95, "gap_med": 16, "n_releases_24m": 30}, "score": 82, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}