# In-browser channel preview (ersatztv#60) — design **Issue:** [#60 — Backlog: browser channel playback after UI redesign](http://192.168.1.95:3000/timothy/ersatztv/issues/60) **Date:** 2026-07-21 **Status:** approved, ready for implementation planning ## Purpose Give an operator a way to answer, from inside ChicoryTV, **"does this channel actually work right now, and is it playing what the guide says?"** — without opening Jellyfin, Kodi, or Dispatcharr. This is a **verification tool**, not a viewing experience. Every design choice below resolves in favour of diagnostic honesty over watchability: failures are surfaced rather than recovered, and a green preview is only ever claimed for the pipeline that was actually exercised. Explicitly out of scope: channel switching, fullscreen/lean-back UX, resume, a guide-driven "watch" surface. If a real viewing experience is wanted later it is a separate issue built on this component. ## Prior art already in the repo Recon established that most of the machinery exists: - `hls.js` is already a dependency (`web/package.json`). - `web/src/media/HlsPlayer.tsx` is a working, reusable, teardown-safe HLS `