Free open-source kiosk mode for Android tablets
Alternative to Fully Kiosk Browser
Website • Installation • FAQ • Features
A Rushb Project
FreeKiosk is an open-source kiosk platform for Android tablets, built for teams that want full control without license costs.
Instead of burying everything in one long page, this README gives you the essentials and points to complete docs in docs/.
- ✅ Free and MIT licensed
- ✅ Device Owner support for true lockdown
- ✅ Works in WebView mode or External App mode
- ✅ Native REST API and MQTT integration
- ✅ Headless ADB provisioning for mass rollout
- ✅ Privacy-first: no mandatory tracking layer
| Area | What you get | Deep dive |
|---|---|---|
| Kiosk modes | WebView, External App, Dashboard, Media/Multi-App evolution | Features and Modes |
| Device control | Lock task, boot behavior, status bar policies, PIN access | Installation |
| Automation | 40+ REST endpoints, MQTT discovery for Home Assistant | Integrations |
| Provisioning | ADB command-based configuration and scripting | ADB Configuration |
| Fleet management | Optional cloud enrollment, remote config, commands, OTA updates | See below |
- Download the latest APK from Releases.
- Install on Android 8.0+ tablet.
- Configure URL/app + PIN.
- Start kiosk mode.
For production lockdown, use Device Owner mode:
adb shell dpm set-device-owner com.freekiosk/.DeviceAdminReceiver👉 Full setup guide: docs/installation.md
| I want to... | Go to |
|---|---|
| Deploy tablets correctly | Installation Guide |
| Understand display/kiosk modes | Features and Modes |
| Integrate with Home Assistant | Integrations Overview |
| Use API endpoints | REST API Docs |
| Configure MQTT topics/discovery | MQTT Docs |
| Provision with scripts | ADB Configuration |
| Follow release direction | Roadmap and Changelog |
| Contribute code | Development Guide |
From v2.0.0-beta.1, FreeKiosk can enroll into FreeKiosk Cloud, a companion server that manages a fleet from a web dashboard: live telemetry, configuration pushed to devices or groups, remote commands, screenshots, and over-the-air app updates. A factory-reset tablet can be provisioned end to end by scanning a QR code at the Android setup wizard.
It is a closed beta, by invitation only. The v2.0.0-beta.x builds are published as GitHub pre-releases: the feature works and is in daily use, but the OTA update path, QR provisioning and Lock Mode behaviour have not yet been proven across enough real hardware for us to call it done. Request an invitation at support@freekiosk.app.
The app itself is unaffected. FreeKiosk stays free and MIT licensed, and the cloud is entirely opt-in: nothing leaves the device until you enroll it. Every kiosk feature, the REST API and the MQTT integration work exactly as before without a cloud account, and always will.
Note
The management server will be released as open source, so you can self-host it. That is the intended end state, not an afterthought: a kiosk platform you cannot host yourself is only half free. We are holding it back until it is stable and feature-complete rather than publishing something that would be painful to run. No date is set, and we would rather say that plainly than announce one we might miss.
| Feature | FreeKiosk | Fully Kiosk |
|---|---|---|
| Price | 🟢 Free | 🔴 Paid per device |
| Open-source | 🟢 MIT | 🔴 Closed source |
| Device Owner mode | ✅ | ✅ |
| REST API | ✅ | ✅ |
| MQTT + Home Assistant discovery | ✅ | ❌ |
| Cloud fleet management | 🔵 Closed beta (see below) | ✅ |
| Self-hostable management server | 🔵 Planned, once stable | 🔴 Hosted only |
- React Native + TypeScript
- Kotlin native modules (Android policy and system control)
- Android SDK 26+ (Android 8+)
v1.2.x: reliability and operational hardening (shipped)v2.0.0-beta.x: cloud fleet management, in closed betav2.0.0: cloud out of beta, once the OTA update path, QR provisioning and Lock Mode behaviour are proven on real fleets- later: the management server released for self-hosting
Detailed notes: docs/roadmap-and-changelog.md
Contributions are welcome.
- Guidelines: CONTRIBUTING.md
- Issues: GitHub Issues
- Discussions: GitHub Discussions
MIT License. See LICENSE.