A Flutter control center for a self-hosted media stack that monitors and manages Docker media services, Node.js backends, and local conversion, request, and release workflows from a single app — on desktop or mobile, over LAN or Tailscale.
It shows live status, CPU, RAM, and network I/O for containers like Jellyfin, Sonarr, Radarr, qBittorrent, Prowlarr, Jellyseerr, and FlareSolverr (talking to the Docker Engine API via Dockerode), with start/stop/restart and log viewing. Jellyseerr and FlareSolverr are first-class tiles with their own detail pages, and a search-and-request flow lets you find a movie or show, pick seasons, and have Jellyseerr auto-route the request to Sonarr/Radarr — posters from TMDB, with already-available titles flagged instead of offered.
Beyond monitoring it does real work: an MKV→MP4 converter probes files with ffprobe and chooses remux vs. audio re-encode, mapping subtitle streams correctly with live FFmpeg progress; a one-click Anime Dual Audio setup idempotently configures Sonarr/Radarr custom formats and quality-profile scores; and a Publish Apps page runs the release/publish PowerShell pipelines for each app (version bump → build → upload) behind a confirm dialog with a live streaming console. A process manager spawns and health-checks the Node backends, stripping PORT/HOST from the parent env so each child reads its own config.
Dashboard Demo