# Thumb-Key Android Keyboard Setup and Input Guide

> Thumb-Key is a Kotlin-based Android keyboard built around a configurable 3x3 grid, gesture input, and fixed key positions. It suits users who prefer direct thumb input over prediction-heavy keyboards, but its unusual layout requires a learning period.

**dessalines/thumb-key** — A privacy-conscious Android keyboard made for your thumbs

- Repository: https://github.com/dessalines/thumb-key
- Stars: 1,561 · Forks: 335
- Language: Kotlin
- License: AGPL-3.0
- Published: 2026-10-16 · Updated: 2026-10-16 · Language: en
- Canonical page: https://hysenlabs.com/projects/dessalines-thumb-key

## Thumb-Key's 3x3 Letter Grid and Intended Users

Thumb-Key addresses Android users who spend substantial time typing with one or both thumbs and do not want to rely on word or sentence prediction for accuracy. Its central design choice is a 3x3 letter grid. Common letters occupy large, fixed keys, while swipes provide access to less common letters. The README says this arrangement is intended to reduce visual searching because the user's eyes can remain in the text-editing area while the fingers learn consistent positions.

The project is also aimed at readers and writers who understand the tradeoff. A small grid reduces the immediate visual field occupied by the keyboard, but it transfers some work to directional gestures and motor memory. A new user must learn which letters belong in which cells and which swipe directions produce secondary letters. The documentation calls the layout easy to learn, but that is a project statement rather than a measured result.

Privacy consciousness is part of the positioning, not proof of a particular technical guarantee. The README does not describe network requests, telemetry behavior, stored keystroke data, or a formal privacy audit. It does state that Thumb-Key avoids depending on profit-driven word and sentence prediction in favor of large keys and predictable positions. That is the concrete distinction to assess when comparing it with prediction-oriented keyboards.

## Taps, Swipes, and Thumb-Key Input Flow

A Thumb-Key input begins with a tap or swipe on a keyboard key. Taps enter the letter assigned to a key, while swipes select other letters or commands associated with directions from that key. The README also documents compound gestures, long presses, and repeated taps. This creates a command model in which the same physical key can represent typing, editing, navigation, punctuation, and application switching depending on the gesture.

Several gestures directly affect text editing. Swiping up or down on `A` capitalizes the letter. A double tap on the space bar inserts a comma, while a triple tap inserts a period, with further taps producing more punctuation. On the backspace key, a normal press deletes at the cursor, but swiping left deletes whole words to the left. Swiping right deletes whole words to the right. The space bar also acts as a navigation surface: horizontal swipes move by one character, and swipes toward the bottom-left or bottom-right move by one word. A long press on the return key inserts a line break.

When `Slide gestures` is enabled, continuous movement becomes more capable. The README specifically says that sliding along the space bar moves the cursor and that upward sliding can select text. This is materially different from tapping a letter and waiting for a prediction engine to decide the intended word. Thumb-Key converts finger direction and travel into discrete operations.

The Emoji key has several context-sensitive roles. Tapping opens the emoji picker, swiping upward opens Thumb-Key configuration, swiping right changes keyboard position, and swiping down opens the IME switcher. Swiping left cycles through selected language layouts. The bottom-left opens voice input, which requires FUTO Voice Input, Transcribro, or Whisper IME. The bottom-right opens sketch mode. This concentration of functions makes the small keyboard possible, but it also makes gesture discovery important.

## Text Editing, Clipboard Access, and External Input

Thumb-Key assigns editing operations to the backspace, space, return, and Symbols / Letters keys. The Symbols / Letters key opens numbers and symbols when tapped and returns to letters when tapped again. Its directional gestures cover selection and clipboard actions. According to the README, a top-left swipe selects all, a top-left swipe followed by movement back selects the current line, an upward swipe copies, and a top-right swipe cuts. If no text is selected, the documented copy behavior copies all text, while the cut gesture selects all text before cutting.

Other directions on the same key perform redo, paste, and undo. Paste opens clipboard history when the gesture goes downward and then returns upward on paste. The README's table of contents also lists clipboard history and a private clipboard, and a sketch mode section is present, although the excerpt does not describe their complete settings or storage behavior.

Voice input is not bundled as an unqualified system capability. The gesture requires FUTO Voice Input, Transcribro, or Whisper IME. This dependency matters when selecting Thumb-Key for accessibility or speech-heavy work: users need a compatible external input application before that Thumb-Key gesture can do anything. The README does not document installation of those applications or explain their privacy and language coverage.

Clipboard and speech integration broaden the keyboard beyond character entry, but they do not make it a full alternative to every text-editing environment. The documented feature set is concentrated around an Android IME and gestures. The repository does not document desktop deployment, browser-specific behavior, or synchronization between devices.

## Installing Thumb-Key Through Android App Channels

The README provides acquisition links rather than a source-build tutorial: F-Droid, IzzyOnDroid, and the latest GitHub release. It does not specify an `adb install` command, an APK filename, a minimum Android version, or the exact Android settings path for selecting the keyboard. There are therefore no documented commands to reproduce here.

For a first real use, start by obtaining Thumb-Key from one of the documented channels and follow Android's normal installation flow for that channel. The README does not provide step-by-step activation instructions, so it would be misleading to invent a sequence of system settings. Once Android recognizes Thumb-Key as an available input method, the documented in-keyboard controls provide the first functional test.

Begin with plain letters rather than every gesture at once. Tap a key, swipe to one of its alternate letters, and compare the result with the layout visible on the device. Next, test capitalization by swiping up or down on `A`. Exercise punctuation with two and three taps on the space bar, then verify cursor movement and whole-word deletion. Finally, open the Emoji key by tapping it and confirm that the picker, layout switcher, IME switcher, sketch mode, and external voice-input action match the device configuration.

The repository includes `app/`, Gradle files, `gradlew`, and `gradlew.bat`, so a Kotlin and Gradle build project is present. However, the README points users to app channels and does not document build prerequisites or signing requirements. Teams intending to fork and compile the application need information not present in this README before treating local builds as a documented path.

## Customization Scope and Learning Costs

Thumb-Key is described as highly configurable. The README names customizable key sizing, ThumbKey and MessagEase layouts, dynamic or Material v3 themes, animations, haptic feedback, and audio feedback. These settings indicate that the keyboard is not limited to a single immutable 3x3 arrangement. Users can alter presentation and behavior, although the README does not enumerate every preference key or show the full settings screen.

The inclusion of a MessagEase layout provides continuity for users familiar with the project's main inspiration. At the same time, Thumb-Key differs from MessagEase in an important way. MessagEase is now described as unmaintained and closed source, while Thumb-Key is open source under AGPL-3.0. Thumb-Key also adds its own 3x3 presentation, language layout cycling, sketch mode, external voice-input integration, and configurable feedback. The older project is therefore a design reference and layout option, not simply the same software under a new name.

The main cost is adaptation rather than server infrastructure. Users must learn direction-sensitive gestures and remember where secondary letters sit. Users who cannot reliably distinguish swipe directions or perform compound movements may find a standard QWERTY keyboard more predictable. The README gives no accessibility evaluation, motor-impairment testing, or typing-speed benchmark, so those claims cannot be inferred from the layout alone.

Customization also creates a support boundary. The repository supports translation work through Weblate and includes release automation files, but the README does not document a settings backup format, migration behavior across releases, or compatibility guarantees for customized layouts. Users should preserve any local preferences they care about when planning an upgrade.

## Thumb-Key Limitations Against Conventional Android Keyboards

Thumb-Key's reliance on gestures is simultaneously its main distinction and its clearest wrong-tool case. On a small Android screen, a 3x3 grid can be easier to reach with thumbs than a dense row of narrow keys, but every secondary letter depends on a directional action. Learning the mapping is necessary before typing becomes automatic. Someone who needs immediately familiar QWERTY placement should not infer that Thumb-Key offers a conventional keyboard with privacy branding added.

The README does not document a word-prediction dictionary, autocorrection rules, swipe-to-word model, or comparison measurements against Gboard, SwiftKey, or other Android IMEs. It presents fixed positions and large keys as the alternative to prediction-driven accuracy. Therefore, users whose workflow depends on predicted sentences, learned dictionaries, or swipe typing should verify those requirements before adopting it.

Other unconfirmed areas include password handling, per-language dictionary behavior, split-screen support, stylus input, accessibility services, and data retention. Silence in the README is not evidence that a feature is unavailable, but it does mean the documentation cannot support an adoption claim for it. This matters for an input method because it receives text from every application that the user selects.

Sketch mode offers a path for a hand-drawn character, while voice input depends on third-party IMEs. Neither replaces a documented offline transcription service inside Thumb-Key itself. Likewise, clipboard history can be convenient, but the README does not state its retention period, encryption model, or automatic-expiration rules.

## AGPL-3.0 Obligations and Thumb-Key Release Maintenance

Thumb-Key is licensed under AGPL-3.0. For a person or organization distributing a modified version or combining the licensed code into a distributed program, the license text is the relevant authority for source-availability, notice, and other obligations. Forking the app for personal inspection is not the same distribution scenario as publishing an APK or integrating the code into another application. This is a licensing boundary to review, not legal advice.

The repository is not archived, and its last push was on 2026-10-15. Recent releases include 5.1.18 on 2026-10-06, 5.1.17 on 2026-09-08, and 5.1.16 on 2026-08-10. Those facts support an active release cadence, but the documentation does not promise a support window, long-term compatibility policy, or migration assistance. Because an Android keyboard stores user preferences and can affect typing across applications, an upgrade can carry more operational concern than an ordinary standalone app.

The repository contains `RELEASES.md`, Gradle configuration, and release-generation files. That is evidence of release infrastructure, not a guarantee that every upgrade is configuration-compatible. Maintainers or integrators should inspect `RELEASES.md` and the relevant preference changes in each release before shipping a fork. The AGPL license should also be retained and reviewed whenever source or APK artifacts are redistributed.

## Conclusion

Adopt Thumb-Key if you want a configurable Android keyboard centered on a 3x3 thumb layout and are willing to learn its gesture system. Do not choose it if a conventional QWERTY layout or undocumented prediction features are requirements. Before replacing your current keyboard, verify installation through your preferred Android distribution channel, test the documented gestures with your preferred input method, and review AGPL-3.0 implications for any distribution or modification you plan.

## FAQ

### How do I install Thumb-Key on Android?

The README links to F-Droid, IzzyOnDroid, and the latest GitHub release. It does not provide an `adb` command or a complete step-by-step guide for enabling the keyboard in Android settings.

### Does Thumb-Key support swipe typing and gesture input?

Thumb-Key uses taps and directional swipes for letters and commands. It also documents long presses, repeated taps, cursor movement, text selection, and an optional continuous `Slide gestures` mode.

### Can Thumb-Key use voice input?

A bottom-left swipe on the Emoji key toggles voice input according to the README. It requires FUTO Voice Input, Transcribro, or Whisper IME.

## Sources

- [dessalines/thumb-key on GitHub](https://github.com/dessalines/thumb-key)
- [Issues](https://github.com/dessalines/thumb-key/issues)
- [License: AGPL-3.0](https://github.com/dessalines/thumb-key/blob/main/LICENSE)
- [README](https://github.com/dessalines/thumb-key/blob/main/README.md)
- [Releases](https://github.com/dessalines/thumb-key/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/dessalines-thumb-key
