Create a classic TV experience using your own media - IPTV backed by Plex/Jellyf...
GitHub Repo

Create a classic TV experience using your own media - IPTV backed by Plex/Jellyf...

@the_ospsPost Author

Project Description

View on GitHub

Bring Back the Classic TV Experience with Your Own Media

Remember when TV was simple? You'd flip on the set, browse through channels, and sometimes stumble upon something great. Modern streaming services killed channel surfing—but what if you could get that experience back using your own media collection?

Enter Tunarr, an open-source project that turns your Plex, Jellyfin, or Emby library into a traditional TV channel experience. It's the missing link between your meticulously organized media server and the nostalgic simplicity of broadcast television.

What It Does

Tunarr builds IPTV-style channels from your existing media libraries. It creates programmable "channels" that play content from your Plex, Jellyfin, or Emby servers in a continuous stream, complete with TV-style scheduling and programming. Think of it as creating your own personal television network using the movies and shows you already own.

The system generates standard M3U playlists and XMLTV electronic program guide data that work with most IPTV clients. You can set up multiple channels with different themes—maybe a 90s sitcom channel, a sci-fi channel, or a weekend movie channel—all pulling from your personal media collection.

Why It's Cool

The magic of Tunarr isn't just in recreating the channel surfing experience—it's in how intelligently it handles your content. The system can create channels based on specific criteria like genre, decade, or collection, and it schedules content with proper consideration for runtime, ensuring shows don't get awkwardly cut off.

What makes this particularly clever is that it doesn't actually move or duplicate your media files. Tunarr works as a scheduling and streaming layer on top of your existing media server, creating the illusion of live channels while pulling content on-demand from your Plex, Jellyfin, or Emby installation.

For developers, there are some nice touches too—it's built with Node.js and TypeScript, offers both CLI and server modes, and includes features like custom commercial insertion points and flexible scheduling rules.

How to Try It

Getting started is straightforward if you're comfortable with Docker:

docker run -d \
  --name=tunarr \
  -p 8000:8000 \
  -v /path/to/your/config:/config \
  --restart unless-stopped \
  ghcr.io/chrisbenincasa/tunarr:latest

Once running, you can access the web interface at http://localhost:8000 to configure your channels and connect to your media server. The repository has comprehensive documentation on setting up channels and integrating with various IPTV clients.

You'll need an existing Plex, Jellyfin, or Emby server with some content to make it worthwhile. The project is actively developed, so check the GitHub repository for the latest setup instructions and requirements.

Final Thoughts

Tunarr solves a problem I didn't realize I had—the paradox of choice with massive media collections. Sometimes you don't want to decide what to watch; you just want to flip through channels and see what's on. It's a clever use of existing media infrastructure that adds a new way to enjoy your content.

For developers, it's also an interesting example of building streaming services on top of existing APIs. The approach could inspire similar projects that reimagine how we interact with our digital media collections. Whether you're looking to recreate that classic TV experience or just want to discover your media in a new way, Tunarr is definitely worth checking out.


Follow for more cool projects: @githubprojects

Back to Projects
Project ID: 1987581598200742390Last updated: November 9, 2025 at 06:02 PM