The keyboard for fat fingers.
The name “Wurstfinger” is a nod to the “fat finger” problem—thumb-heavy typing on small screens.
Wurstfinger is a MessagEase-inspired keyboard for iOS written in SwiftUI. It brings thumb-friendly gestures from Thumb-Key and the original MessagEase layout to Apple devices, including circular gestures for uppercase letters, return swipes for typographic punctuation, and compose rules to generate accented characters.
Requirements: iOS 17.0 or later
Light Theme |
Dark Theme |
Numbers Layer |
Numbers Layer (Dark) |
Traditional QWERTY keyboards waste screen space and require precise tapping. Wurstfinger uses a 3×3 grid with swipe gestures, so your thumbs travel less and hit the right key more often—even on small screens. Once you get past the learning curve (a few days of practice), you'll type faster and with fewer errors.
Want to try the latest features before they hit the App Store? Join our public TestFlight beta!
- Nightly builds with the latest features from the
developbranch - Help shape the keyboard with your feedback
- Early access to experimental features
- Multi-language support: 14 languages including English, German, Spanish, French, Portuguese, Italian, Dutch, Swedish, Norwegian, Danish, Finnish, Polish, Czech, and Vietnamese
- MessagEase layout with symbol and numeric layers
- Compose engine that reproduces Thumb-Key's combination triggers (e.g.
' + a → á) - Return swipes for punctuation and math symbols (
?→¿,*→†,/→÷, ...) - Circular gestures on keys to insert uppercase letters
- Drag gestures for cursor movement and progressive deletion
- Customizable settings: Adjust haptic feedback intensity, keyboard scale, and key aspect ratio
- Onboarding flow with interactive setup guide
- Xcode 16 (or newer)
- iOS 17 SDK
Open the project in Xcode:
xed wurstfinger/wurstfinger.xcodeprojor build from the command line on macOS:
cd wurstfinger/wurstfinger
xcodebuild -scheme Wurstfinger -destination 'platform=iOS Simulator,name=iPhone 16' buildThe project includes unit tests for gesture handling and compose logic. Run all tests with:
cd wurstfinger/wurstfinger
xcodebuild test -scheme Wurstfinger -destination 'platform=iOS Simulator,name=iPhone 16' -only-testing:WurstfingerTestsNote: Some tests require an available iOS Simulator. Adjust the destination to match your local simulator name if necessary.
- Build and run the
Wurstfingerscheme on a device or simulator. - The app includes an interactive onboarding guide that walks you through:
- Adding the keyboard in Settings › General › Keyboard › Keyboards
- Enabling "Allow Full Access" for cursor control and deletion features
- Testing the keyboard in the practice view
wurstfinger/
├─ README.md
├─ LICENSE
├─ wurstfinger/ # Xcode project root
│ ├─ wurstfinger.xcodeproj # Project file
│ ├─ wurstfinger/ # Host app (minimal)
│ ├─ wurstfingerKeyboard/ # Keyboard extension sources
│ ├─ wurstfingerTests/ # Swift Testing unit tests
│ └─ wurstfingerUITests/ # UI test target (currently empty)
This project is licensed under the MIT License.
- MessagEase for the original layout concepts
- Thumb-Key for inspiration and compose rules



