gitmyhub

iptv-sources

TypeScript ★ 8.8k updated 10h ago

Autoupdate iptv sources

A self-updating aggregator that collects IPTV channel playlists and TV schedule data from multiple community sources and publishes them as M3U files you can point any IPTV player app at.

TypeScriptNode.jsDockersetup: easycomplexity 2/5

IPTV is a way of watching live TV channels over the internet instead of through a cable or satellite connection. IPTV players use playlist files in a format called M3U, which contain lists of channel names and their stream addresses. This project collects and automatically updates M3U playlist files from several upstream sources on GitHub and around the web, and publishes them from a single location.

The sources are pulled from multiple community-maintained repositories and sites, covering a range of channels. EPG (Electronic Programme Guide) data, which provides TV schedule information, is also aggregated from several providers. The project combines all of this into updated playlist files you can point an IPTV player at.

You can deploy your own copy instead of relying on the public instance. Three deployment options are documented: GitHub Pages (free, no server required), Docker, and Node.js. Running your own instance means you control when updates happen and which sources are included.

Several environment variables let you adjust the behavior. You can configure a proxy for fetching source files from GitHub (useful in regions with restricted access), add fallback URLs that kick in if primary sources fail, and enable an optional stream checker that tests whether channel streams are actually working before including them in the output.

The project is written in TypeScript, has a Docker image on Docker Hub, and is licensed under GPL-3.0.

Where it fits