Development is paused. Google's Android Developer Verification mandate runs directly against why this project existed, and maintaining it isn't something we're willing to do.
Learn more and push back at keepandroidopen.org
Existing releases remain available for as long as they keep working.
Privacy-focused Android keyboard with swipe typing, custom layouts, and password manager support. No tracking, 100% on-device, and fully open source.
Or download the APK directly from GitHub Releases.
Input
- Swipe typing with geometric path matching and vertex detection
- One-handed and split modes with coordinate transformation
- Adaptive layout for tablets and foldables
- Long-press for character variations and custom key mapping
- Long-press comma key to switch keyboards (IME picker)
- Spacebar swipe for cursor control
- Backspace swipe to delete previous word
- Optional number row
- QWERTZ, AZERTY, Dvorak, Colemak, Workman, Bds and Hcesar layouts
- Hardware keyboard detection
Intelligence
- Local bigram model for next-word prediction
- On-device spell checking using URIK (Ultra-compressed Ranked Input Korpus) — a custom binary dictionary format with Levenshtein automaton traversal
- Autocorrect with configurable pause-on-misspell; skips URLs, emails, and punctuation
- Word learning with encrypted SQLCipher database
- User-specific word frequency tracking
- 19 supported languages with dedicated language toggle button
- Merged dictionaries mode for multilingual typing sessions
- Emoji search with keyword support
Integration
- Inline autofill support for password managers (Android 11+)
- Clipboard history with encrypted storage
Customization
- 15+ built-in themes with favorites and Material You dynamic theming (Android 12+)
- Custom long-press symbol and key assignments
- Haptic feedback strength slider
- Auto-capitalization toggle
- Configurable key size, key label size, spacebar size, and cursor speed
- Manage learned words: browse, search, and delete entries
- WCAG AA contrast and TalkBack support
Privacy
- No telemetry, analytics, or network permissions
- Local on-device processing
- Encrypted local storage for user data (AES-256 + Android Keystore)
- Biometric authentication for accessing learned words
- Dictionary export and import for backup or migration
- Bigram predictions and word frequencies remain local-only (not exported)
All processing happens on-device. No data leaves your phone. User dictionary and learned words are stored in an encrypted local database.
We answer to our users, not investors.
- Android 8.0 or higher (API level 26+)
git clone https://github.com/urikdev/Urik.git
cd Urik
./gradlew assembleDebugRequirements: Android Studio Panda+, JDK 17+, Android SDK 36+
See CONTRIBUTING.md for guidelines.
Report vulnerabilities via SECURITY.md.
Spell checking uses word frequency lists from FrequencyWords by hermitdave, derived from the OpenSubtitles corpus.
- License: CC-BY-SA-4.0
- Modifications: Filtered top-N by frequency per language, compiled to URIK binary format at build time
Emoji search uses multilingual keyword annotations from Unicode CLDR (Common Locale Data Repository).
- License: Unicode License V3
- Modifications: Extracted emoji annotations, converted to searchable JSON format
Kana-to-kanji conversion uses dictionary data from Mozc by Google LLC.
- License: BSD 3-Clause
- Modifications: Extracted reading/surface/frequency triples; converted cost values to frequency scores; filtered single-character hiragana entries (covered by the spell-check dictionary)
GNU General Public License v3.0




