## 01Home

Land on what matters: Continue Watching, Recently Added, and per-category rails built from a locally cached library index. The scanner keeps it fresh in the background.

- Recently added across all folders
- TV / Movies / Anime / Cartoons rails
- Mini-transport always in reach

## 02Library

The full collection, grouped by configurable folder types. Filter chips and live search narrow 300+ shows to the one you want in a keystroke.

- Type chips with live counts
- Folder → type mapping is yours to edit
- Episode-level browse per show

## 03Show pages

Every show gets a season-by-season episode list. Play one episode, or queue the whole run on whichever device is active — the queue follows the show order.

- Play / Queue all from the header
- Per-episode play buttons
- "Queued 19 on 'Black TV'" — one click

## 04Player & devices

The control plane is native Swift: VLC over HTTP on the laptop, mpv over SSH on the TV box, QuickTime via AppleScript. Switch targets with one click in the toolbar.

- Transport, volume, subtitle/dub toggle
- Sleep timer and host load readout
- Device registry editable in-app

## 05Search everywhere

One search box covers the library you have and the torrents you don't. Results show seeders, size, and source — already in your library is flagged first.

- Library hits ranked above downloads
- Seeders / size / tracker at a glance
- Add to Transmission with one click

## 06Downloads

Live Transmission view of everything moving on the storage box: throughput, per-torrent progress, ETA, and a "needs attention" triage for stuck or erroring transfers.

- 44 active · 168 seeding, one screen
- Stuck-at-0-peers flagged automatically
- Notification when an episode is watchable

## 07Devices

The device registry lives in `devices.json` and is editable in-app. Each entry shows connectivity, roles, and host load — LAN first, WireGuard fallback.

- Laptop VLC + TV box out of the box
- Restart / deploy actions per device
- Reload, reset, or reveal the config

## 08Logs & settings

Filterable structured logs for every subsystem, and settings that cover library types, media-key forwarding, download notifications, an offline episode cache, and an importable download VPN.

- INFO / WARN / ERROR filters
- Offline cache: next episodes synced to disk
- OpenVPN import for dark download traffic

## How it works

Hybrid architecture: a native Swift control plane with zero new runtime dependencies, delegating data-heavy work to vendored helper subsystems.

### Control plane · `Swift`

VLC's Lua HTTP interface for local playback; mpv JSON-IPC tunneled over SSH for the TV attached to the storage box; AppleScript for QuickTime. All first-party frameworks.

### Data plane · `helpers`

Library scanning, metadata enrichment, torrent search, and recommendations run as subprocesses from vendored helper projects — reused, not rewritten.

### Fleet · `mesh`

Devices resolve over the LAN with a WireGuard overlay fallback, so the same app drives the living-room TV from home or from the road.