Bluke turns your Android phone into a Bluetooth keyboard, touchpad, gamepad, and multimedia remote without needing any host companion software.
- Direct Bluetooth HID connection with no companion apps or server software running on the host
- Four input modes: Keyboard, Touchpad, Gamepad, and Multimedia remote
- 12 mechanical switch sound profiles, plus support for importing custom Mechvibes sound packs
- Multiple typing layouts (QWERTY, AZERTY, QWERTZ, Dvorak, Colemak, Russian ЙЦУКЕН) with
Shift + Spacecycling - Multiple keyboard geometries (60%, 65%, 75%) and custom themes with case, plate, and keycap styling
- Gamepad controller with live switching between Native, Android, and Web mappings
- Multimedia remote with presentation controls, touchpad, and phone volume button forwarding
- Built for peak UX with haptic feedback, OLED black mode, and Material You dynamic theming
Usage & troubleshooting guide · Changelog
- Android 9 (API level 28) or higher with firmware supporting the Bluetooth HID Device profile. Profile availability depends on device chipset and OEM ROM.
- A compatible Bluetooth host (Windows, Linux, Android, ChromeOS). Apple and macOS devices are currently unsupported / future scope.
- Android Studio / JDK compatible with the project's Android Gradle Plugin.
- Android SDK 36.1, as configured in
app/build.gradle.kts. - The included Gradle Wrapper.
-
Clone the repository:
git clone https://github.com/arnav-kr/Bluke.git cd Bluke -
Build with Gradle:
./gradlew assembleDebug # Linux / macOS .\gradlew.bat assembleDebug # Windows PowerShell
-
Install on device: Enable USB Debugging on your Android phone and run:
./gradlew installDebug
The debug APK is output to app/build/outputs/apk/debug/app-debug.apk.
This project is licensed under the AGPL-3.0.
See the full contributor graph.