Afrim ⌨️
===
[](https://github.com/pythonbrad/afrim/blob/main/CHANGELOG.md)
[](https://crates.io/crates/afrim)
[](https://github.com/pythonbrad/afrim/blob/main/LICENSE)

[](https://docs.rs/afrim)
[](https://deps.rs/repo/github/pythonbrad/afrim)
[](https://coveralls.io/github/pythonbrad/afrim?branch=main)
Afrim is an input method for African languages. It is designed to protect the native language of various local dialects of Africa and is a universal phonetic-based input method platform.
History
---
AFRIM is the abbreviation of *AFRICA IME* or *Africa Input Method Engine*.
From the beginning, AFRIM was written as a remake of [Clafrica IME](https://github.com/H-Theking/clafrica), and named *clafrica*.
Then, we created an input method library with some improvements inspired from [RIME](https://github.com/rime). We renamed it to *Afrim Input Method Engine*.
Later, it supports Amharic and Geez and other african phonetic input method, and we want support all african phonetic Input Method.
Inspired from [librime](https://github.com/rime/librime), we want AFRIM aka *Afrim Input Method Engine* to be the top IME for african languages.
For more details on the project name, confer the issue https://github.com/pythonbrad/afrim/issues/107.
Features
===
- [ ] 🌐 Support for all sequential codification codes.
- [ ] 🎨 Easy to use CLI interface.
- [ ] 📚 Customizable dictionary.
- [ ] 💻 Support for both desktop and web platform.
- [ ] 🤖 Support for the Rhai scripting language.
- [ ] 📝 Auto-suggestion / Auto-correction / Auto-completion.
- [ ] ☁️ Full immersion mode for non-latin languages. (🚧 Experimental 🚧)
Installation
===
Build dependencies (Linux only)
---
- libxtst-dev
- libevdev-dev
- libxdo-dev
Runtime dependencies (Linux only)
---
- libxtst-dev
- libevdev-dev
- libxdo-dev
Supported keyboard layouts
---
- QWERTY (USA)
- FRENCH (not AZERTY)
In using cargo
---
`cargo install afrim`
Try it in the console
---
`afrim` comes with a REPL application which can be used to test if his library is working.
To use the afrim, simply provide the path of the datafile that suit your needs.
Eg. `afrim configfile.toml`
📚 Dataset
===
🏢 Official:
- [Afrim Supported Code](https://github.com/pythonbrad/afrim-data).
🧑🏿🤝🧑🏿 Community:
- Feel free to propose your own.
🎨 Frontends
===
🏢 Official:
- [afrim-wish](https://github.com/pythonbrad/afrim-wish): Frontend for desktop environment.
- [afrim-web](https://github.com/pythonbrad/afrim-web): Frontend for web environment.
- [afrim-keyboard](https://github.com/pythonbrad/afrim-keyboard): Frontend for android environment.
🧑🏿🤝🧑🏿 Community:
- Feel free to propose your own.
Licence
===
All the code in this repository is released under the Mozilla Public License v2.0, for more information take a look at the [LICENSE](LICENSE) file.
Contributing
===
If you would like to contribute to this project, please fork the repository and submit a pull request with your changes.