afrim is a framework and toolset that facilitates the implementation of input method engines (IMEs). Initially introduced as an IME for African languages[1], afrim has now evolved into a universal solution. It is compatible with various sequential writing systems, including Amharic, Geez, Pinyin, and more.
afrim is written in Rust and his architecture is inspired by librime[2].
It's available to use in Rust (afrim), Python (afrim-py), JavaScript (afrim-js), and more.