Bootstrap Castarr from NodeCast prototype

Imported the native TV app (Kotlin, ExoPlayer, embedded remote server, QR
pairing) plus CONTEXT.md and ADRs 0001-0005. Rename, Compose for TV UI and
the Dispatcharr integration follow as tracked issues.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
be-nj
2026-08-25 00:09:00 +02:00
commit a11b5a68c0
44 changed files with 2418 additions and 0 deletions

View File

@@ -0,0 +1,20 @@
---
status: accepted
---
# Multi-user app with full TV UI; login via OIDC Device Flow
The app's audience is every user of the household's Dispatcharr backend, each
on their own Google TV — not a single phone-controlled screen. Two consequences:
1. **Full TV UI** (Compose for TV): channel list, zapping and favorites are
operable with the D-pad alone. The QR-paired phone Remote stays as an
optional convenience, no longer the primary control.
2. **Login via OIDC Device Flow** against Authentik: the TV shows a QR/code,
the user confirms on their phone; the app then calls the Dispatcharr fork's
API with Bearer tokens. No Xtream credentials for the primary backend.
The generic M3U/XMLTV source type (ADR-0003) stays as a login-less fallback
for Threadfin/Tunarr/ErsatzTV. The fork scope now bundles: OIDC UI login,
Device Flow + Bearer API, per-user favorites, per-request stream profile
parameter.