Skip to content

RetroIPTVGuide is a Flask-based IPTV web interface inspired by 90s/2000s cable TV guides. It displays channel lineups from .m3u playlists and program data from XMLTV EPGs in a nostalgic grid. Features include user authentication, admin controls, and HLS playback, making it perfect for ErsatzTV or any IPTV source.

License

Notifications You must be signed in to change notification settings

thehack904/RetroIPTVGuide

Repository files navigation

πŸ“Ί RetroIPTVGuide v4.3.0

Version GHCR Build Status License


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.

Includes Docker and TrueNAS SCALE deployment for easy installation and persistence.

πŸš€ Features

  • 🧰 Unified installers for Linux, Raspberry Pi, and Windows
  • 🧭 Integrated channel guide (EPG) viewer
  • πŸ‘₯ User management web interface (manage_users.html)
  • βš™οΈ Lightweight Flask backend, easy to self-host
  • πŸ” Local-only by default β€” no external dependencies

πŸ“¦ Image Information

Registry Image Architectures Updated
GitHub Container Registry ghcr.io/thehack904/retroiptvguide:latest amd64 / arm64 Automatically via CI/CD

⚠️ Note: This is still a BETA release. It is not recommended for direct Internet/public-facing deployments.


πŸ›  Installation

🐳 Docker

docker pull ghcr.io/thehack904/retroiptvguide:latest
docker run -d -p 5000:5000 ghcr.io/thehack904/retroiptvguide:latest

🧩 TrueNAS SCALE App

  • Repository: ghcr.io/thehack904/retroiptvguide
  • Tag: latest
  • Exposes port 5000.

🐧 Linux

curl -sSL https://raw.githubusercontent.com/thehack904/RetroIPTVGuide/main/retroiptv_linux.sh | sudo bash -s install --agree --yes

πŸ“ Raspberry Pi

curl -sSL https://raw.githubusercontent.com/thehack904/RetroIPTVGuide/main/retroiptv_rpi.sh | sudo bash -s install --agree --yes

πŸͺŸ Windows (PowerShell)

Set-ExecutionPolicy Bypass -Scope Process -Force
Invoke-WebRequest https://raw.githubusercontent.com/thehack904/RetroIPTVGuide/main/retroiptv_windows.ps1 -OutFile retroiptv_windows.ps1
.\retroiptv_windows.ps1 install

🌐 Access

After 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.


πŸ”„ Updating

🐧 Linux

sudo retroiptv_linux.sh update --yes

πŸ“ Raspberry Pi

sudo retroiptv_rpi.sh update --yes

πŸͺŸ Windows

Alignment with Linux/Pi currently on track for v4.0.1 release

git fetch --all ; git reset --hard origin/main ; Restart-Service RetroIPTVGuide

πŸ“˜ Uninstall

🐧 Linux

sudo retroiptv_linux.sh uninstall --yes

πŸ“ Raspberry Pi

sudo retroiptv_rpi.sh uninstall --yes

πŸͺŸ Windows

  1. Double click or Right Click on retroiptv_windows.bat and select Run As Administrator
  2. Select Uninstall

πŸ“Έ Screenshots

πŸ“Ί Auto Scroll

Auto Scroll

πŸ“Ί Guide Page

Guide Screenshot

πŸ“Ί Mobile

Mobile

πŸ“Ί Mobile

Mobile

πŸ“Ί Video Pop Out

Guide Pop Out

πŸ’» Desktop Pop Out

Desktop Pop Out

πŸ“° TV Guide Magazine Theme

TV Guide Theme

πŸ’Ύ AOL / CompuServe Theme

AOL Theme


🀝 Contributing

Contributions are welcome! Here’s how you can help:

  1. Report Issues – Found a bug or want to suggest a feature? Open an issue.
  2. Submit Pull Requests – Fork, modify, test, and submit PRs for new features or fixes.
  3. Improve Documentation – Add screenshots, examples, or clearer explanations.

All contributions will be reviewed before merging into the main branch.


🧭 Project Info

See ROADMAP.md for full details.


πŸ’‘ Tip

Combine this with ErsatzTV for full media channel playout and a seamless retro-TV experience!

About

RetroIPTVGuide is a Flask-based IPTV web interface inspired by 90s/2000s cable TV guides. It displays channel lineups from .m3u playlists and program data from XMLTV EPGs in a nostalgic grid. Features include user authentication, admin controls, and HLS playback, making it perfect for ErsatzTV or any IPTV source.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages