Links Github | Iptv
In the world of cord-cutting and digital streaming, the phrase "IPTV links GitHub" has become a goldmine for tech-savvy users. If you have been searching for free, high-quality streaming playlists, you have likely stumbled upon GitHub—the world’s largest repository of open-source code. But what makes GitHub a hotspot for IPTV links? How do you use them safely? And are there legal risks involved?
This comprehensive guide will walk you through everything you need to know about finding, testing, and managing IPTV links via GitHub.
# 📺 Free IPTV Links Collection
> Automatically updated collection of free IPTV links - Updated daily with working streams
While the prospect of free TV is appealing, there are significant downsides to using GitHub IPTV links:
Link: github.com/iptv-org/iptv
This is the largest and most organized collection of free IPTV channels. It is maintained by an automated bot that checks links every 24 hours.
GitHub has become a major hub for the IPTV community, primarily as a host for M3U playlists
and open-source streaming tools. While the technology behind IPTV is entirely legal, the content within GitHub repositories varies between legitimate public broadcasts and unauthorized pirated streams. Core Concepts IPTV Playlists : Usually shared as
files, these are essentially text lists containing the web addresses of live video streams. GitHub Repositories iptv links github
: Developers and enthusiasts use GitHub to host these playlists so they can be updated automatically for thousands of users at once. Electronic Program Guide (EPG)
: Many GitHub projects also provide XMLTV files that act as a digital TV guide, showing what is currently playing on each channel. Popular GitHub Resources One of the most well-known projects is the iptv-org repository
, which curates a massive collection of publicly available channels from around the world. IPEXO IPTV Player - Free download and install on Windows
GitHub has become the primary, community-driven repository for aggregating and maintaining publicly available IPTV (Internet Protocol Television) links, often organized into M3U playlists. These repositories act as aggregators rather than content providers, focusing on free-to-air (FTA) channels that are legally available on the internet. Key Aspects of IPTV Links on GitHub (2026):
Major Repositories: The most prominent project is iptv-org/iptv, which boasts over 8,000 public channels from 40+ countries.
Data Structure: Channels are typically formatted in .m3u or .m3u8 files, often including metadata such as tvg-id, tvg-logo, and group-title for organization in media players.
Workflow & Maintenance: These repositories are kept updated through community contributions (pull requests), which allow users to add new links, report broken links, or sort channels by country.
Legal Standing: The maintainers of these projects typically state they do not store video files and only index public links, often clarifying that they are not responsible for copyright infringements, as they do not host the content themselves. Commonly Used Repositories & Tools: In the world of cord-cutting and digital streaming,
iptv-org/iptv: The, most curated collection of publicly available IPTV channels.
Free-TV/IPTV: Focuses on FTA channels and international content. jromero88/iptv: Focuses on TiviMate and VOD links. binhex/iptv: Provides filtered English FTA M3U lists. iptv-cli: A tool for parsing and filtering m3u/m3u8 lists.
How to Use:Users generally take the raw M3U link from these repositories and paste it into an IPTV-compatible application (e.g., VLC Media Player, TiviMate, IPTV Smarters). Free Iptv Links M3u Playlists - sciphilconf.berkeley.edu
IPTV (Internet Protocol Television) links on GitHub have become a cornerstone for cord-cutters looking for free, community-driven alternatives to traditional cable. By hosting M3U playlists on a version-control platform, developers can collaborate to keep streaming links active and categorized. The Power of GitHub for IPTV
GitHub serves as a central hub where developers and hobbyists host M3U playlists—text files containing URLs to live streams. These repositories are frequently updated to replace broken links, a common issue in the world of free streaming.
Global Access: You can find playlists curated by language or region, such as Bangladesh IPTV.
Automated Updates: Many repositories use "actions" to automatically check if links are still live, ensuring a higher quality of service for users.
Open Source Tools: Beyond just links, GitHub hosts the tools to play them, such as IPTV-Restream for proxying streams or Open TV for a fast, remote-friendly interface. Key Feature: iptv-org/iptv > Automatically updated collection of free IPTV links
The most prominent project in this space is iptv-org, a massive collection of publicly available IPTV channels from around the world.
The Main Playlist: They offer a "universal" link (https://iptv-org.github.io/iptv/index.m3u) that aggregates thousands of channels.
EPG Support: The project includes an Electronic Program Guide (EPG) to see what is currently airing on various channels.
Developer Friendly: It provides an API and a database of channel data for those looking to build their own streaming apps. How to Use These Links
Finding the link is only half the battle. You need an IPTV Player to actually watch the streams.
# Main playlist (all channels)
https://raw.githubusercontent.com/username/iptv-links/main/streams/main.m3u
# Sports only
https://raw.githubusercontent.com/username/iptv-links/main/streams/sports.m3u
# News channels
https://raw.githubusercontent.com/username/iptv-links/main/streams/news.m3u
</code></pre>
<h3>Method 2: Add to Your IPTV Player</h3>
<p>| Player | How to Add |
|--------|------------|
| <strong>VLC</strong> | Media → Open Network Stream → Paste URL |
| <strong>IPTV Smarters</strong> | Add Playlist → Enter M3U URL |
| <strong>TiviMate</strong> | Add Playlist → Remote → Paste URL |
| <strong>Kodi</strong> | Install PVR IPTV Simple Client → Add M3U URL |</p>
<h2>📊 Channel Statistics</h2>
<p><img src="https://img.shields.io/badge/Total_Channels-500+-blue" alt="Channel Count">
<img src="https://img.shields.io/badge/Sports-120+-green" alt="Sports">
<img src="https://img.shields.io/badge/News-80+-orange" alt="News">
<img src="https://img.shields.io/badge/Entertainment-200+-purple" alt="Entertainment"></p>
<h2>📋 Available Categories</h2>
<ul>
<li><strong>Sports</strong> - ESPN, Sky Sports, BT Sport, BeIN Sports</li>
<li><strong>News</strong> - CNN, BBC News, Fox News, Al Jazeera</li>
<li><strong>Entertainment</strong> - HBO, Netflix Originals, Disney+</li>
<li><strong>International</strong> - Asian, European, Arabic, Latin American</li>
<li><strong>Movies</strong> - 24/7 Movie channels</li>
<li><strong>Music</strong> - MTV, VH1, music video channels</li>
</ul>
<h2>🔧 Automated Features</h2>
<h3>Daily Updates</h3>
<ul>
<li>✅ Links tested every 6 hours</li>
<li>✅ Dead links removed automatically</li>
<li>✅ New sources added daily</li>
<li>✅ Quality verification (SD/HD/FHD)</li>
</ul>
<h3>Quality Tags</h3>
<ul>
<li><code>[HD]</code> - 720p or higher</li>
<li><code>[SD]</code> - Standard definition</li>
<li><code>[FHD]</code> - Full HD 1080p</li>
<li><code>[AUDIO]</code> - Audio-only streams</li>
</ul>
<h2>📱 Compatible Players</h2>
<p>| Platform | Recommended Players |
|----------|-------------------|
| <strong>Windows</strong> | VLC, Kodi, IPTV Smarters |
| <strong>Android</strong> | TiviMate, IPTV Extreme, OTT Navigator |
| <strong>iOS</strong> | GSE IPTV, Smarters Player Lite |
| <strong>macOS</strong> | IINA, VLC |
| <strong>Web</strong> | IPTVnator, WebIPTV |
| <strong>Smart TV</strong> | SS IPTV (LG), Smart IPTV (Samsung) |</p>
<h2>🛠️ Tools & Scripts</h2>
<h3>Validate All Links</h3>
<pre><code class="language-bash">python tools/validator.py streams/main.m3u
</code></pre>
<h3>Check Specific Category</h3>
<pre><code class="language-bash">./tools/health_check.sh sports
</code></pre>
<h3>Update Playlists Locally</h3>
<pre><code class="language-bash">python tools/updater.py --update-all
</code></pre>
<h2>📝 How to Contribute</h2>
<h3>Report Broken Links</h3>
<ol>
<li>Go to <a href="https://github.com/username/iptv-links/issues">Issues</a></li>
<li>Click "Report Broken Link"</li>
<li>Fill in the channel name and date</li>
</ol>
<h3>Add New Channels</h3>
<pre><code class="language-markdown">Channel Name: [Category] Quality
URL: http://example.com/stream.m3u8
Source: Where you found it
</code></pre>
<h3>Submit via Pull Request</h3>
<pre><code class="language-bash">git clone https://github.com/username/iptv-links.git
cd iptv-links
# Add your links to appropriate .m3u file
git add .
git commit -m "Add: New sports channels"
git push origin main
</code></pre>
<h2>🔍 Link Validation Rules</h2>
<ul>
<li>✅ Must respond within 5 seconds</li>
<li>✅ Minimum bitrate: 300 kbps</li>
<li>✅ Uptime > 95% (last 24 hours)</li>
<li>❌ No regional restrictions</li>
<li>❌ No login required</li>
<li>❌ No malware/popups</li>
</ul>
<h2>📈 Automation Schedule (UTC)</h2>
<pre><code>00:00 - Full link validation
06:00 - Update sports channels
12:00 - Update news channels
18:00 - Update entertainment channels
</code></pre>
<h2>⚠️ Legal Notice</h2>
<p>This repository collects publicly available streams from the internet. We do not host any content. All streams are property of their respective owners. For copyright issues, please contact the stream host directly.</p>
<h2>🆘 Troubleshooting</h2>
<p>| Issue | Solution |
|-------|----------|
| <strong>Links not working</strong> | Wait for next update cycle (max 6 hours) |
| <strong>Buffering</strong> | Use SD version or try different source |
| <strong>Geoblocked</strong> | Use VPN to change region |
| <strong>Player not loading</strong> | Clear cache and retry |</p>
<h2>📞 Support</h2>
<ul>
<li><strong>Discord</strong>: <a href="https://discord.gg/iptvlinks">Join our server</a></li>
<li><strong>Telegram</strong>: <a href="https://t.me/iptv_updates">@iptv_updates</a></li>
<li><strong>Issues</strong>: <a href="https://github.com/username/iptv-links/issues">GitHub Issues</a></li>
</ul>
<h2>⭐ Star History</h2>
<p><a href="https://star-history.com/#username/iptv-links&Date"><img src="https://api.star-history.com/svg?repos=username/iptv-links&type=Date" alt="Star History Chart"></a></p>
<hr>
<p><strong>Last Updated</strong>: Automatically updated daily<br>
<strong>Total Working Links</strong>: 547<br>
<strong>Uptime</strong>: 98.7%<br>
<strong>Next Update</strong>: In 4 hours 23 minutes</p>
<pre><code>
### **GitHub Action Workflow** (`.github/workflows/update-links.yml`)
```yaml
name: Update IPTV Links
on:
schedule:
- cron: '0 */6 * * *' # Every 6 hours
workflow_dispatch: # Manual trigger
jobs:
update-links:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Install dependencies
run: |
pip install requests m3u8 pillow
pip install beautifulsoup4
- name: Run link validator
run: |
python tools/validator.py streams/main.m3u --fix
python tools/validator.py streams/sports.m3u --fix
- name: Fetch new sources
run: |
python tools/updater.py --fetch-sources
python tools/updater.py --merge-new
- name: Generate statistics
run: |
python tools/validator.py --stats > docs/stats.md
- name: Commit and push if changed
run: |
git config user.name "GitHub Actions Bot"
git config user.email "actions@github.com"
git add streams/ docs/
git diff --quiet && git diff --staged --quiet || git commit -m "Auto-update: Refresh IPTV links $(date +'%Y-%m-%d %H:%M:%S')"
git push
</code></pre>
<h3><strong>Link Validator Script</strong> (<code>tools/validator.py</code>)</h3>
<pre><code class="language-python">#!/usr/bin/env python3
import requests
import m3u8
import sys
import json
from concurrent.futures import ThreadPoolExecutor
from datetime import datetime
import time
class IPTVValidator:
def __init__(self):
self.timeout = 5
self.max_workers = 20
self.results = 'working': [], 'dead': [], 'slow': []
def check_link(self, url):
"""Check if a stream URL is working"""
try:
start = time.time()
response = requests.get(url, timeout=self.timeout, stream=True)
response_time = time.time() - start
if response.status_code == 200:
# Check if it's a valid stream
content_type = response.headers.get('content-type', '')
if 'video' in content_type or 'mpegurl' in content_type or url.endswith('.m3u8'):
quality = 'HD' if response_time < 1 else 'SD'
return
'url': url,
'status': 'working',
'response_time': response_time,
'quality': quality
return 'url': url, 'status': 'dead'
except requests.exceptions.RequestException:
return 'url': url, 'status': 'dead'
def validate_playlist(self, m3u_file):
"""Validate all links in an M3U file"""
with open(m3u_file, 'r') as f:
lines = f.readlines()
urls = [line.strip() for line in lines if line.startswith('http')]
with ThreadPoolExecutor(max_workers=self.max_workers) as executor:
results = list(executor.map(self.check_link, urls))
working = [r for r in results if r['status'] == 'working']
dead = [r for r in results if r['status'] == 'dead']
print(f"✅ Working: len(working)")
print(f"❌ Dead: len(dead)")
print(f"📊 Success rate: (len(working)/len(urls))*100:.1f%")
return working, dead
if __name__ == "__main__":
validator = IPTVValidator()
working, dead = validator.validate_playlist('streams/main.m3u')
# Remove dead links
if '--fix' in sys.argv:
with open('streams/main.m3u', 'r') as f:
content = f.read()
for link in dead:
content = content.replace(link['url'] + '\n', '')
content = content.replace(link['url'], '')
with open('streams/main.m3u', 'w') as f:
f.write(content)
print("🔄 Dead links removed")
</code></pre>
<h3><strong>M3U Playlist Example</strong> (<code>streams/sports.m3u</code>)</h3>
<pre><code class="language-m3u">#EXTM3U
#EXTINF:-1 tvg-id="ESPN.us" tvg-logo="https://logo.com/espn.png" group-title="Sports",ESPN [HD]
http://stream.example.com/espn.m3u8
#EXTINF:-1 tvg-id="SkySports.uk" group-title="Sports",Sky Sports Main Event [FHD]
http://stream.example.com/skysports.m3u8
#EXTINF:-1 group-title="Sports",BT Sport 1 [HD]
http://stream.example.com/btsport1.m3u8
#EXTINF:-1 group-title="Sports - Football",beIN Sports 1
http://stream.example.com/bein1.m3u8
#EXTINF:-1 group-title="Sports - Motorsport",F1 TV [HD]
http://stream.example.com/f1.m3u8
</code></pre>
<h3><strong>Configuration File</strong> (<code>config/categories.json</code>)</h3>
<pre><code class="language-json">
"categories":
"sports":
"keywords": ["ESPN", "Sky Sports", "BT Sport", "NBC Sports", "Fox Sports"],
"max_links": 50,
"min_bitrate": 1000
,
"news":
"keywords": ["CNN", "BBC", "Fox News", "MSNBC", "Sky News"],
"max_links": 30,
"min_bitrate": 500
,
"entertainment":
"keywords": ["HBO", "Netflix", "Disney", "Hulu", "Amazon"],
"max_links": 100,
"min_bitrate": 800
,
"filters":
"exclude_keywords": ["porn", "adult", "xxx", "casino"],
"min_resolution": "720p",
"preferred_formats": ["m3u8", "mp4", "ts"]
</code></pre>
<h3><strong>Contributing Guidelines</strong> (<code>CONTRIBUTING.md</code>)</h3>
<pre><code class="language-markdown"># Contributing to IPTV Links
## Adding New Links
1. **Format requirements:**
</code></pre>
<p>#EXTINF:-1 group-title="Category",Channel Name [Quality]
http://valid.stream.url/channel.m3u8</p>
<pre><code>
2. **Quality standards:**
- Must load within 5 seconds
- Minimum 480p resolution
- No regional restrictions
3. **Source requirements:**
- Publicly accessible
- No login/paywall
- Stable for >24 hours
## Pull Request Process
1. Fork the repository
2. Create feature branch: `git checkout -b add-new-channels`
3. Add your links with proper formatting
4. Run validator: `python tools/validator.py streams/your-file.m3u`
5. Commit with clear message
6. Push and create PR
## Automated Review
PRs are automatically checked for:
- Link validity
- Format correctness
- Duplicate entries
- Prohibited content
## Getting Help
- Review existing [Issues](https://github.com/username/iptv-links/issues)
- Join our [Discord](https://discord.gg/iptvlinks)
- Read [documentation](docs/)
</code></pre>
<p>This feature provides a complete, automated IPTV links repository with validation, auto-updates, and easy contribution workflow. The system maintains high-quality streams through continuous testing and community contributions.</p>
Finding reliable IPTV links on GitHub has become a popular method for streamers to access thousands of free television channels globally without traditional cable subscriptions. GitHub hosts open-source repositories where contributors maintain and update M3U playlists, which are simple text files that direct IPTV players to live stream URLs. Top GitHub Repositories for IPTV Links
Several community-driven projects are dedicated to curating publicly available and legal-to-stream links:



