Native Android client for Tvheadend — live TV, EPG, teletext, recordings (DVR) and radio. For Android TV boxes and phones, built with Jetpack Compose.
Headent Client is an independent Android client for a Tvheadend server. It bundles no channels or content — it connects to a Tvheadend server you run and configure yourself. One APK serves both phones and TV boxes, with a UI optimised for D-pad remotes as well as touch. Version 1.0.6 added a teletext decoder built into the app, a guide and favourites for radio stations, and the colour keys of a TV remote. The app and website are localised into 31 languages. No ads, no tracking, no telemetry.
Kotlin Multiplatform with Jetpack Compose for the UI and libVLC for playback. The shared KMP core holds the API client (Ktor, Basic/Digest auth), data models, HTSP, the DVR classifier and secure storage. The Android app is the actively developed target (one APK for phone and TV); an iOS (SwiftUI) target shares the core and is work in progress. Built with Gradle (the wrapper is part of the repository, so a fresh clone builds without installing Gradle); CI runs on GitHub Actions on each push, producing R8/minified release builds.
shared/ — KMP core: API client (Ktor, Basic/Digest), models, HTSP, DVR classifier, secure storage androidApp/ — Jetpack Compose UI, one APK for phone and Android TV iosApp/ — SwiftUI (work in progress)