MCPcopy Index your code
hub / github.com/RushB-fr/freekiosk

github.com/RushB-fr/freekiosk @v1.2.19

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.2.19 ↗ · + Follow
6,076 symbols 13,417 edges 145 files 309 documented · 5%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

FreeKiosk

Free open-source kiosk mode for Android tablets

Alternative to Fully Kiosk Browser

<a href="https://freekiosk.app">Website</a> •
<a href="#-install-in-60-seconds">Installation</a> •
<a href="https://github.com/RushB-fr/freekiosk/raw/v1.2.19/docs/faq.md">FAQ</a> •
<a href="#-key-capabilities">Features</a>







<img src="https://img.shields.io/badge/Version-1.2.17-blue.svg" alt="Version 1.2.17">
<a href="https://github.com/rushb-fr/freekiosk/releases"><img src="https://img.shields.io/github/downloads/rushb-fr/freekiosk/total.svg" alt="Downloads"></a>
<img src="https://img.shields.io/badge/License-MIT-blue.svg" alt="License: MIT">
<img src="https://img.shields.io/badge/Android-8.0%2B-green.svg" alt="Android 8.0+">
<img src="https://img.shields.io/badge/Device%20Owner-Supported-brightgreen" alt="Device Owner">
<img src="https://img.shields.io/badge/REST%20API-40%2B%20Endpoints-orange" alt="REST API">
<img src="https://img.shields.io/badge/MQTT-Home%20Assistant%20Discovery-41BDF5" alt="MQTT">

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/.

Why teams choose it

  • ✅ 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

✨ Key capabilities

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

📦 Install in 60 seconds

  1. Download the latest APK from Releases.
  2. Install on Android 8.0+ tablet.
  3. Configure URL/app + PIN.
  4. 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

🧩 Docs map

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

🥊 FreeKiosk vs Fully Kiosk Browser

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 Roadmap

🛠️ Tech stack

  • React Native + TypeScript
  • Kotlin native modules (Android policy and system control)
  • Android SDK 26+ (Android 8+)

🗺️ Roadmap snapshot

  • v1.2.x: reliability and operational hardening
  • v1.3.x: richer deployment and media workflows
  • v2.x: optional cloud/fleet management direction

Detailed notes: docs/roadmap-and-changelog.md

🤝 Contributing

Contributions are welcome.


📄 License

MIT License. See LICENSE.

Stars Forks Issues License

Made with ❤️ in France by Rushb

<a href="https://freekiosk.app">Website</a> •
<a href="https://github.com/rushb-fr/freekiosk">GitHub</a> •
<a href="mailto:contact@rushb.fr">Contact</a>

Extension points exported contracts — how you extend this code

ToggleRowProps (Interface)
Small toggle row sub-component
src/components/settings/ManagedAppsSection.tsx
AccessibilityServiceModuleType (Interface)
(no doc) [2 implementers]
src/utils/AccessibilityServiceModule.ts
ScheduledEvent (Interface)
(no doc)
src/types/planner.ts
KioskScreenProps (Interface)
(no doc)
src/screens/KioskScreen.tsx
BatteryStatus (Interface)
(no doc)
src/services/DeviceControlService.ts
WebViewComponentProps (Interface)
(no doc)
src/components/WebViewComponent.tsx
PrintModuleType (Interface)
(no doc) [1 implementers]
src/utils/PrintModule.ts
ManagedApp (Interface)
(no doc)
src/types/managedApps.ts

Core symbols most depended-on inside this repo

d
called by 409
android/app/src/main/java/com/freekiosk/DebugLog.kt
e
called by 190
android/app/src/main/java/com/freekiosk/DebugLog.kt
errorProduction
called by 87
android/app/src/main/java/com/freekiosk/DebugLog.kt
w
called by 66
android/app/src/main/java/com/freekiosk/DebugLog.kt
i
called by 49
android/app/src/main/java/com/freekiosk/DebugLog.kt
bool
called by 47
src/screens/KioskScreen.tsx
str
called by 21
src/screens/KioskScreen.tsx
reset
called by 18
src/utils/MotionDetectionModule.ts

Shape

Method 4,001
Class 1,405
Function 576
Interface 94

Languages

TypeScript89%
Kotlin11%

Modules by API surface

android/app/src/main/assets/pdfjs/pdf.worker.min.js3,500 symbols
android/app/src/main/assets/pdfjs/pdf.min.js1,372 symbols
android/app/src/main/java/com/freekiosk/MainActivity.kt52 symbols
android/app/src/main/java/com/freekiosk/api/HttpServerModule.kt51 symbols
android/app/src/main/java/com/freekiosk/api/KioskHttpServer.kt49 symbols
android/app/src/main/java/com/freekiosk/OverlayService.kt47 symbols
android/app/src/main/java/com/freekiosk/KioskModule.kt41 symbols
src/screens/settings/SettingsScreenNew.tsx34 symbols
android/app/src/main/java/com/freekiosk/mqtt/MqttModule.kt31 symbols
src/utils/secureStorage.ts30 symbols
src/utils/KioskModule.ts30 symbols
src/services/DeviceControlService.ts27 symbols

For agents

$ claude mcp add freekiosk \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page