gitwtfhub

wtf is epg?

iptv-org/epg — explained in plain English

Analysis updated 2026-07-17 · repo last pushed 2026-06-22

3,071HTMLAudience · ops devopsComplexity · 2/5ActiveSetup · easy

TL;DR

EPG automatically pulls TV program schedules from hundreds of TV websites and merges them into one standardized file that IPTV apps and media servers can read.

Mindmap

mindmap
  root((repo))
    What it does
      Fetch TV schedules
      Merge into one file
      Standardized format
    Tech stack
      JavaScript
      HTML
    Use cases
      IPTV setups
      Media servers
      Scheduled fetch jobs
    Audience
      Sysadmins
      IPTV hobbyists
    Setup
      CLI or Docker
      Custom channel lists

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Fetch TV schedules from one or many supported TV sites instead of checking each station's website by hand.

REASON 2

Run it on a schedule (cron or Docker) so your IPTV setup's program guide stays current automatically.

REASON 3

Filter which channels and how many days ahead of schedule data to collect with a custom XML channel list.

REASON 4

Host the generated schedule file on a server so other devices on your network can pull it via URL.

What's in the stack?

JavaScriptHTML

How it stacks up

iptv-org/epgnexu-io/html-anythingzarazhangrui/beautiful-html-templates
Stars3,0712,7343,447
LanguageHTMLHTMLHTML
Last pushed2026-06-222026-06-09
MaintenanceActiveMaintained
Setup difficultyeasyeasyeasy
Complexity2/52/51/5
Audienceops devopsvibe codergeneral

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · easy Time to first run · 30min

Works out of the box from the CLI, scheduling it (cron/Docker) for continuous updates takes a bit more setup.

Yoink these prompts

Prompt 1
Show me how to run this EPG tool to fetch a 7-day schedule for a specific list of channels and output it as a compressed XML file.
Prompt 2
How do I set up a Docker container that runs this EPG fetcher automatically every 12 hours and serves the result over HTTP?
Prompt 3
Write a custom XML channel list for this project so it only grabs schedules for the channels I care about.
Prompt 4
How do I configure this tool to use a proxy and limit the number of simultaneous downloads when fetching from multiple TV sites?
Prompt 5
Explain how to convert the EPG output from XML to JSON so I can use it in a custom media server app.

Frequently asked questions

wtf is epg?

EPG automatically pulls TV program schedules from hundreds of TV websites and merges them into one standardized file that IPTV apps and media servers can read.

What language is epg written in?

Mainly HTML. The stack also includes JavaScript, HTML.

Is epg actively maintained?

Active — commit in last 30 days (last push 2026-06-22).

How hard is epg to set up?

Setup difficulty is rated easy, with roughly 30min to a first successful run.

Who is epg for?

Mainly ops devops.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.