Self-hosted YouTube linear TV. The classic channels of yesteryear — Fox Kids, Cartoon Cartoons, Kids WB, Disney Afternoon, Nick at Nite, MST3K, Classic Game Shows — running live 24/7.
30+ curated channels running 24/7 with HDHomeRun emulation
15 hand-curated networks — Fox Kids, Cartoon Cartoons, Kids WB, Disney Afternoon, Nick at Nite, Classic Nickelodeon, Saturday Morning Cartoons, MST3K, Classic Game Shows, Late Night Classics, Sci-Fi Originals, PBS Kids Classic, Unsolved Mysteries, Infomercials, and 80s/90s Commercials — plus a small grid of decade/genre channels to round it out.
Auto-detected by Plex, Jellyfin, and Emby as a network tuner via SSDP. No manual setup needed.
Standard playlist and electronic program guide compatible with any IPTV player.
Seeded shuffle ensures every viewer sees the same thing at the same time. Tune in like real broadcast TV.
Add custom channels beyond the grid with community-contributed or your own YAML playlists.
Manage channels, toggle categories, view the TV guide, report broken videos, and install plugins.
Full-screen CRT television UI in the browser with channel surfing for the authentic experience.
Single container with FFmpeg and yt-dlp included. One command to deploy.
Auto-generated TV guide synced to the virtual clock. Always know what's playing and what's next.
Plug into the media server you already use
Docker is the fastest path
# docker-compose.yml version: '3.8' services: retroarr: image: f00d4tehg0dz/retroarr:latest container_name: retroarr restart: unless-stopped network_mode: host ports: - "8888:8888" - "1900:1900/udp" volumes: - retroarr-db:/app/server/db env_file: .env environment: - PORT=8888 - DB_PATH=/app/server/db/db.json volumes: retroarr-db: driver: local # Then run: docker compose up -d # Dashboard available at http://localhost:8888 # Add to your media server # Tuner URL: http://<your-ip>:8888 # EPG URL: http://<your-ip>:8888/epg.xml