Welcome to RetroIPTVGuide, a lightweight self-hosted IPTV + EPG web interface inspired by classic cable TV guides β built for modern home labs, retro media setups, and Android/Fire/Google TV screens.
RetroIPTVGuide is an IPTV Web Interface inspired by 90s/2000s cable TV guides.
It is designed to work with ErsatzTV (GitRepo) but supports any .m3u, .m3u8, and .xml IPTV source.
πΊ Self-hosted IPTV Electronic Program Guide (EPG)
Turn any IPTV playlist into a full TV-style channel guide.
π° Virtual Channels System
Create channels such as News, Weather, Traffic (simulated), and System Status that appear directly inside your guide alongside live IPTV channels.
- News uses your own configurable RSS feeds
- Weather provides location-based forecasts using ZIP code or latitude/longitude
- Traffic provides simulated retro-style traffic reports
π‘ Multi-Source IPTV Support
Load multiple M3U / M3U8 playlists with XMLTV EPG data.
π Combined Tuners
Merge multiple IPTV providers or playlists into one unified channel lineup.
π§ Integrated Channel Guide
Retro-style guide with smooth auto-scroll navigation and TV-style browsing.
π± TV-Optimized Web Interface
Designed to work well on Android TV, Fire TV, browsers, and tablets.
π Display Scaling Modes
Adjust the interface for different screen sizes: Large / Medium / Small.
π¨ Customizable Retro Themes
Multiple themes inspired by classic TV guides and retro UI styles.
π₯ User Management System
Admin interface for managing users and guide preferences.
π³ Simple Deployment Options
Run almost anywhere:
- Docker
- Linux
- Windows
- Raspberry Pi
π Local-First by Default
Runs entirely on your server with no cloud services or external dependencies.
β Lightweight Backend
Built with Flask for easy self-hosting and minimal system requirements.
| Registry | Image | Architectures | Updated |
|---|---|---|---|
| GitHub Container Registry | ghcr.io/thehack904/retroiptvguide:latest |
amd64 / arm64 | Automatically via CI/CD |
docker pull ghcr.io/thehack904/retroiptvguide:latest
docker run -d -p 5000:5000 ghcr.io/thehack904/retroiptvguide:latest- Repository:
ghcr.io/thehack904/retroiptvguide - Tag:
latest - Exposes port
5000.
See docker/unraid/ for RetroIPTVGuide.xml / README-unraid.md for installation instructions
curl -sSL https://raw.githubusercontent.com/thehack904/RetroIPTVGuide/main/retroiptv_linux.sh | sudo bash -s install --agree --yescurl -sSL https://raw.githubusercontent.com/thehack904/RetroIPTVGuide/main/retroiptv_rpi.sh | sudo bash -s install --agree --yesSet-ExecutionPolicy Bypass -Scope Process -Force
Invoke-WebRequest https://raw.githubusercontent.com/thehack904/RetroIPTVGuide/main/retroiptv_windows.bat -OutFile retroiptv_windows.bat
.\retroiptv_windows.bat installAfter installation:
π RetroIPTVGuide Web Interface: http://<server-ip>:5000
π Default Login: admin / strongpassword123
β οΈ Beta Notice:
This version is feature-complete and stable, but still displays a Beta disclaimer during installation for liability protection.
Do not expose your instance directly to the public Internet.
sudo /home/iptv/iptv-server/retroiptv_linux.sh update --yessudo /home/iptv/iptv-server/retroiptv_rpi.sh update --yesAlignment with Linux/Pi currently on track for v4.0.1 release
git fetch --all ; git reset --hard origin/main ; Restart-Service RetroIPTVGuideRun the updater from your installed RetroIPTVGuide folder.
sudo /home/iptv/iptv-server/retroiptv_linux.sh uninstall --yessudo /home/iptv/iptv-server/retroiptv_rpi.sh uninstall --yes- Double click or Right Click on retroiptv_windows.bat and select Run As Administrator
- Select Uninstall
Contributions are welcome! Hereβs how you can help:
- Report Issues β Found a bug or want to suggest a feature? Open an issue.
- Submit Pull Requests β Fork, modify, test, and submit PRs for new features or fixes.
- Improve Documentation β Add screenshots, examples, or clearer explanations.
All contributions will be reviewed before merging into the main branch.
- Homepage: GitHub β RetroIPTVGuide
- License: CC BY-NC-SA 4.0
- Maintainer: @thehack904
See ROADMAP.md for full details.
Combine this with ErsatzTV for full media channel playout and a seamless retro-TV experience!










