# OpenBoard Get it on F-Droid Get it on Google Play ![](images/feature.png) 100% FOSS keyboard, based on AOSP. ## Permissions * **Read Contacts**: Used to add your contact list to suggestions. Disabled by default. ## Common issues - Cannot open settings in MIUI See https://github.com/dslul/openboard/issues/46 ## Contribute ### How to create a dictionary You can use [this tool](https://github.com/remi0s/aosp-dictionary-tools) to create a dictionary. You need a wordlist, as described [here](https://github.com/dslul/openboard/blob/master/dictionaries/sample.combined). The output .dict file must be put in [res/raw](https://github.com/dslul/openboard/tree/master/app/src/main/res/raw). ### APK Development #### Linux Install java: ```sh sudo pacman -S jdk8-openjdk jre8-openjdk jre8-openjdk-headless ``` Install Android SDK: ```sh sudo pacman -S snapd sudo snap install androidsdk ``` Configure your SDK location in your `~/.bash_profile` or `~/.bashrc`: ```bash export ANDROID_SDK_ROOT=~/snap/androidsdk/current/AndroidSDK/ ``` Install the platform tools for your target android version: ```sh androidsdk "platform-tools" "platforms;android-29" ``` Compile the project. This will install all dependencies, make sure to accept licenses when prompted. ```sh ./gradlew assembleDebug ``` Connect your phone and install the debug APK ```sh adb install ./app/build/outputs/apk/debug/app-debug.apk ``` ## Credits - [AOSP Keyboard](https://android.googlesource.com/platform/packages/inputmethods/LatinIME/) - [LineageOS](https://review.lineageos.org/admin/repos/LineageOS/android_packages_inputmethods_LatinIME) - [Simple Keyboard](https://github.com/rkkr/simple-keyboard) - [Indic Keyboard](https://gitlab.com/indicproject/indic-keyboard)