Epic: #113 · Milestone: MC7 — TV shell
Tasks
- Movies: poster grid (virtualised, sort/filter by genre/year/unwatched), detail with backdrop, synopsis, cast row, "Play / Resume / Mark watched / Audio & Subtitles / Delete", related items.
- TV: series grid, series detail with season tabs, episode list with thumbnails and progress, "Next up" logic, auto-play next with a countdown card.
- Music: artists/albums/tracks/genres/playlists, album detail, queue management, shuffle/repeat, gapless via #85, persistent mini-player, lyrics out of scope.
- Photos: folder/album view, timeline by EXIF date, fullscreen viewer with pan/zoom via remote, slideshow with interval + music.
- Sources: raw file browser for any mounted source with file-type icons, play from folder, "add as library folder".
- All screens as
.stx→ Home, using tokens only; per-screen headless navigation tests.
Acceptance
Each screen has a golden frame in QEMU and a scripted navigation test; on the Pi, scrolling a 500-item grid meets tv-ui-60fps.