# HeliBoard HeliBoard is a privacy-conscious and customizable open-source keyboard, based on AOSP / OpenBoard. Does not use internet permission, and thus is 100% offline. [Get it on F-Droid](https://f-droid.org/packages/helium314.keyboard/) [Get APK from GitHub](https://github.com/Helium314/HeliBoard/releases/latest) [Get it on IzzyOnDroid](https://apt.izzysoft.de/fdroid/index/apk/helium314.keyboard) ## Table of Contents - [Features](#features) - [Contributing](#contributing-) * [Reporting Issues](#reporting-issues) * [Translations](#translations) * [To Community Creation](#to-community) * [Code Contribution](CONTRIBUTING.md) - [To-do](#to-do) - [License](#license) - [Credits](#credits) # Features For [FAQ](https://github.com/Helium314/HeliBoard/wiki/FAQ) and more information about the app and features, please visit the [wiki](https://github.com/Helium314/HeliBoard/wiki) # Contributing ❤ ## Reporting Issues Whether you encountered a bug, or want to see a new feature in HeliBoard, you can contribute to the project by opening a new issue [here](https://github.com/Helium314/HeliBoard/issues). Your help is always welcome! Before opening a new issue, be sure to check the following: - **Does the issue already exist?** Make sure a similar issue has not been reported by browsing [existing issues](https://github.com/Helium314/HeliBoard/issues?q=). Please search open and closed issues. - **Is the issue still relevant?** Make sure your issue is not already fixed in the latest version of HeliBoard. - **Is it a single topic?** If you want to suggest multiple things, open multiple issues. - **Did you use the issue template?** It is important to make life of our kind contributors easier by avoiding issues that miss key information to their resolution. Note that issues that that ignore part of the issue template will likely get treated with very low priority, as often they are needlessly hard to read or understand (e.g. huge screenshots, not providing a proper description, or addressing multiple topics). Blatant violation of the guidelines may result in the issue getting closed. If you're interested, you can read the following useful text about effective bug reporting (a bit longer read): https://www.chiark.greenend.org.uk/~sgtatham/bugs.html ## Translations Translations can be added using [Weblate](https://translate.codeberg.org/projects/heliboard/). You will need an account to update translations and add languages. Add the language you want to translate to in Languages -> Manage translated languages in the top menu bar. Updating translations in a PR will not be accepted, as it may cause conflicts with Weblate translations. Some notes on translations * when translating metadata, translating the changelogs is rather useless. It's available as it was requested by translators. * the `hidden_features_message` is horrible to translate with Weblate, and serves little benefit as it's just a copy of what's already in the wiki: https://github.com/Helium314/HeliBoard/wiki/Hidden-functionality. It's been made available in the app on user request/contribution. ## To Community You can share your themes, layouts and dictionaries with other people: * Themes can be saved and loaded using the menu on top-right in the _adjust colors_ screen * You can share custom colors in a separate [discussion section](https://github.com/Helium314/HeliBoard/discussions/categories/custom-colors) * Custom keyboard layouts are text files whose content you can edit, copy and share * this applies to main keyboard layouts and to special layouts adjustable in advanced settings * see [layouts.md](layouts.md) for details * You can share custom layouts in a separate [discussion section](https://github.com/Helium314/HeliBoard/discussions/categories/custom-layout) * Creating dictionaries is a little more work * first you will need a wordlist, as described [here](https://codeberg.org/Helium314/aosp-dictionaries/src/branch/main/wordlists/sample.combined) and in the repository readme * the you need to compile the dictionary using [external tools](https://github.com/remi0s/aosp-dictionary-tools) * the resulting file (and ideally the wordlist too) can be shared with other users * note that there will not be any further dictionaries added to this app, but you can add dictionaries to the [dictionaries repository](https://codeberg.org/Helium314/aosp-dictionaries) ## Code Contribution See [Contribution Guidelines](CONTRIBUTING.md) # To-do __Planned features and improvements:__ * Improve support for modifier keys (_alt_, _ctrl_, _meta_ and _fn_), some ideas: * keep modifier keys on with long press * keep modifier keys on until the next key press * use sliding input * Less complicated addition of new keyboard languages (e.g. #519) * Additional and customizable key swipe functionality * Some functionality will not be possible when using glide typing * Add and enable emoji dictionaries by default (if available for language) * Clearer / more intuitive arrangement of settings * Maybe hide some less used settings by default (similar to color customization) * Make use of the `.com` key in URL fields (currently only available for tablets) * With language-dependent TLDs * [Bug fixes](https://github.com/Helium314/HeliBoard/issues?q=is%3Aissue+is%3Aopen+label%3Abug) __What will _not_ be added:__ * Dictionaries for more languages (you can still download them) * Anything that requires additional permissions, unless there is a _very_ good reason # License HeliBoard (as a fork of OpenBoard) is licensed under GNU General Public License v3.0. > Permissions of this strong copyleft license are conditioned on making available complete source code of licensed works and modifications, which include larger works using a licensed work, under the same license. Copyright and license notices must be preserved. Contributors provide an express grant of patent rights. See repo's [LICENSE](/LICENSE) file. Since the app is based on Apache 2.0 licensed AOSP Keyboard, an [Apache 2.0](LICENSE-Apache-2.0) license file is provided. The icon is licensed under [Creative Commons BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/). A [license file](LICENSE-CC-BY-SA-4.0) is also included. # Credits - Icon by [Fabian OvrWrt](https://github.com/FabianOvrWrt) with contributions from [The Eclectic Dyslexic](https://github.com/the-eclectic-dyslexic) - [OpenBoard](https://github.com/openboard-team/openboard) - [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) - [FlorisBoard](https://github.com/florisboard/florisboard/) - Our [contributors](https://github.com/Helium314/HeliBoard/graphs/contributors)