euzu / tuliprox
Flexible IPTV playlist processor & proxy in Rust 🦀 - supports M3U, Xtream Codes, HDHomeRun, Plex, Emby & Jellyfin. Filtering, merging, scheduling & web delivery.
AI Architecture Analysis
This repository is indexed by RepoMind. By analyzing euzu/tuliprox in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.
Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context on-demand, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.
Repository Overview (README excerpt)
Crawler view**tuliprox** - A Powerful IPTV Proxy & Playlist Processor is a high-performance IPTV proxy and playlist processor written in Rust 🦀. It ingests M3U/M3U8 playlists, Xtream sources and local media, reshapes them into clean outputs, and serves them to Plex, Jellyfin, Emby, Kodi and similar clients. 🔧 Core Features • **Advanced Playlist Processing**: Filter, rename, map, and sort entries with ease. • **Flexible Proxy Support**: Acts as a reverse/redirect proxy for EXTM3U, Xtream Codes, HDHomeRun, and STRM formats (Kodi, Plex, Emby, Jellyfin) with: • app-specific naming conventions • flat directory structure option (for compatibility reasons of some media scanners) • **Local Media Library Management**: Scan and serve local video files with automatic metadata resolution: • Recursive directory scanning for movies and TV series • Multi-source metadata (NFO files, TMDB API, filename parsing) • Automatic classification (Movies vs Series) • Integration with Xtream API and M3U playlists • **Multi-Source Handling**: Supports multiple input and output sources. Merge various playlists and generate custom outputs. • **Scheduled Updates**: Keep playlists fresh with automatic updates in server mode. • **Web Delivery**: Run as a CLI tool to create m3u playlist to serve with web servers like Nginx or Apache. • **Template Reuse (DRY)**: Create and reuse templates using regular expressions and declarative logic. 🔍 Smart Filtering Define complex filters using expressive logic, e.g.: 📢 Monitoring & Alerts • Send notifications via **Telegram**, **Pushover**, or custom **REST** endpoints when problems occur. • Track group changes and get real-time alerts. 📺 Stream Management • Share live TV connections. • Show a fallback video stream if a channel becomes unavailable. • Integrate **HDHomeRun** devices with **Plex**, **Emby**, or **Jellyfin**. • Use provider aliases to manage multiple lines from the same source. • Optional per-input flag to force direct TS stream endpoints instead of HLS reverse-proxy streaming. 🐋 Docker Container Templates • traefik template • crowdsec template • gluetun/socks5 template • tuliprox (incl. traefik) template Want to join the community Join us on Discord License See . Quick start Install with docker the latest image. Open the Browser and continue setup. Project layout • : main server and processing pipeline • : Yew Web UI • : DTOs and shared logic • : example configuration • : Markdown source for the project documentation Documentation The detailed documentation lives in Markdown under and is meant to be rendered as a static site. • Docs source: • Build static docs: • Serve generated docs with the Web UI build at Main entry points: • • • • • • • • • Documentation strategy The recommended format is: • source in Markdown • generated as static HTML • shipped together with the frontend/web root For this repository, is the best fit: • Markdown stays easy to edit in Git • static HTML output is simple to host • it fits a Rust project better than a Node-heavy doc stack • navigation and search come out of the box