Customizable and privacy-conscious open-source keyboard
Find a file
2025-04-03 17:09:27 +02:00
.github clarify that some parts of the contribution guidelines are (strongly) recommended, but not necessary 2025-02-02 21:50:33 +01:00
app allow renaming main layouts in subtypeScreen 2025-04-03 17:09:27 +02:00
art/launcher_icon Add new vector icon (#592) 2024-03-31 21:24:10 +02:00
fastlane/metadata/android upgrade version and translations 2025-03-16 15:01:39 +01:00
gradle/wrapper upgrade dependencies 2025-01-03 17:24:43 +01:00
tools update translations 2025-03-02 07:33:10 +01:00
.gitignore update tools scripts 2024-06-01 13:50:06 +02:00
build.gradle.kts upgrade dependencies 2025-03-04 22:19:17 +01:00
CONTRIBUTING.md put setting defaults in one place 2025-02-09 19:01:57 +01:00
gradle.properties remove unused dependencies and compress native libraries 2023-08-29 07:52:18 +02:00
gradlew upgrade dependencies 2024-06-03 19:07:39 +02:00
gradlew.bat upgrade dependencies 2024-06-03 19:07:39 +02:00
layouts.md add timestamp keycode and setting for adjusting format, fixes GH-846 2025-03-29 12:36:07 +01:00
LICENSE rename LICENSE-GPL-3 to LICENSE because GitHub is stupid and wrongly shows Apache-2.0 (can't choose, only determined automatically) 2025-01-12 21:12:14 +01:00
LICENSE-Apache-2.0 update license headers in java / kotlin code 2023-10-17 13:44:01 +02:00
LICENSE-CC-BY-SA-4.0 Add new vector icon (#592) 2024-03-31 21:24:10 +02:00
README.md remove todo section from readme 2025-03-31 20:13:28 +02:00
settings.gradle move new show/hide toolbar settings and do some cleanup 2024-06-01 22:18:19 +02:00

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 Get APK from GitHub Get it on IzzyOnDroid

Table of Contents

Features

  • Add dictionaries for suggestions and spell check
    • build your own, or get them here, or in the experimental section (quality may vary)
    • additional dictionaries for emojis or scientific symbols can be used to provide suggestions (similar to "emoji search")
    • note that for Korean layouts, suggestions only work using this dictionary, the tools in the dictionary repository are not able to create working dictionaries
  • Customize keyboard themes (style, colors and background image)
    • can follow the system's day/night setting on Android 10+ (and on some versions of Android 9)
    • can follow dynamic colors for Android 12+
  • Customize keyboard layouts (only available when disabling use system languages)
  • Customize special layouts, like symbols, number, or functional key layout
  • Multilingual typing
  • Glide typing (only with closed source library ☹️)
    • library not included in the app, as there is no compatible open source library available
    • can be extracted from GApps packages ("swypelibs"), or downloaded here (click on the file and then "raw" or the tiny download button)
  • Clipboard history
  • One-handed mode
  • Split keyboard
  • Number pad
  • Backup and restore your settings and learned word / history data

For FAQ and more information about the app and features, please visit the 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. 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. 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. 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
  • 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 for details
    • You can share custom layouts in a separate discussion section
  • Creating dictionaries is a little more work
    • first you will need a wordlist, as described here and in the repository readme
    • the you need to compile the dictionary using external 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

Code Contribution

See Contribution Guidelines

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 file.

Since the app is based on Apache 2.0 licensed AOSP Keyboard, an Apache 2.0 license file is provided. The icon is licensed under Creative Commons BY-SA 4.0. A license file is also included.

Credits