From 5f941659d229fdb9a447a0bddb9fdfafb504d5e3 Mon Sep 17 00:00:00 2001 From: VlastikYoutubeKo <56507931+VlastikYoutubeKo@users.noreply.github.com> Date: Fri, 15 Aug 2025 12:25:30 +0200 Subject: [PATCH 1/3] Create index.html Added a website that "should" work --- index.html | 283 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 283 insertions(+) create mode 100644 index.html diff --git a/index.html b/index.html new file mode 100644 index 0000000..de35517 --- /dev/null +++ b/index.html @@ -0,0 +1,283 @@ + + + + + + Aria | Curated IPTV Channels + + + + + + + + + +
+ + + + + From 2623494ccd675038f58f75d94d5c3e573ff3b3e7 Mon Sep 17 00:00:00 2001 From: VlastikYoutubeKo <56507931+VlastikYoutubeKo@users.noreply.github.com> Date: Fri, 15 Aug 2025 12:28:07 +0200 Subject: [PATCH 2/3] Update aria.m3u --- aria.m3u | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/aria.m3u b/aria.m3u index 1309e39..a0affe0 100644 --- a/aria.m3u +++ b/aria.m3u @@ -317,7 +317,7 @@ http://90.178.86.156:9981/stream/channelid/748255433?ticket=216B5B41838A2332296F http://90.178.86.156:9981/stream/channelid/1183792288?ticket=6CE25AF67B8D74983939FCF3B123AD08A5B0BAE8&profile=pass #EXTINF:-1 group-title="Czechia" tvg-id="Óčko.STAR.cz",OCKO STAR http://90.178.86.156:9981/stream/channelid/1340646702?ticket=6A7ED7E2087641A202EA744A9DE44B07A2EE2FAC&profile=pass -#EXTINF:-1 group-title="Czechia" tvg-id="CNN.Prima.News.cz"CNN Prima News +#EXTINF:-1 group-title="Czechia" tvg-id="CNN.Prima.News.cz",CNN Prima News http://90.178.86.156:9981/stream/channelid/1443888704?ticket=B2AC43F9C197099EE2A723A8B5D26A8402094755&profile=pass #EXTINF:-1 group-title="Czechia" tvg-id="TV.Barrandov.cz",TV Barrandov http://90.178.86.156:9981/stream/channelid/1149773228?ticket=56A407B3D9D49568B131C27B70C4B903FD070FE5&profile=pass @@ -331,7 +331,7 @@ http://tvh.cyn.cz/stream/channelid/1693764695?profile=pass http://185.236.230.212:9981/play/a0bb #EXTINF:-1 group-title="Czechia" tvg-id="Auto.Motor.Sport.cz",AUTOMOTORSPORT HD https://webstream.odjezdy.online/EU/AMSTV/video.m3u8 -#EXTINF:-1 group-title="Czechia"CANAL+ ACTION HD +#EXTINF:-1 group-title="Czechia",CANAL+ ACTION HD http://185.236.230.212:9981/play/a0bw #EXTINF:-1 group-title="Czechia",CANAL+ SPORT http://185.236.230.212:9981/play/a0bu From 78d5df59627aa516148243745704d23bd135de32 Mon Sep 17 00:00:00 2001 From: VlastikYoutubeKo <56507931+VlastikYoutubeKo@users.noreply.github.com> Date: Fri, 15 Aug 2025 12:29:18 +0200 Subject: [PATCH 3/3] Update index.html --- index.html | 64 +++++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 46 insertions(+), 18 deletions(-) diff --git a/index.html b/index.html index de35517..5f4147c 100644 --- a/index.html +++ b/index.html @@ -60,7 +60,7 @@ margin-bottom: 2rem; } - .project-info h2 { + .project-info h2, .project-info h3 { margin-top: 0; } @@ -73,6 +73,10 @@ .project-info a:hover { text-decoration: underline; } + + .playlist-links p { + margin: 0.5rem 0; + } .category-folder { border: 1px solid var(--border-color); @@ -95,17 +99,29 @@ width: 100%; border-collapse: collapse; } + + .channel-table th, .channel-table td { + padding: 0.75rem 1.5rem; + border-top: 1px solid var(--border-color); + text-align: left; + } - .channel-table td { - text-align: left; - padding: 0.75rem 1.5rem; - border-top: 1px solid var(--border-color); + .channel-table th { + font-weight: 600; + font-size: 0.9rem; + color: var(--muted-text-color); } .channel-name { display: flex; align-items: center; } + + .channel-table a { + color: var(--accent-color); + text-decoration: none; + font-weight: 500; + } .unstable-icon { color: #ffc107; @@ -131,24 +147,28 @@ const parseM3U = (m3uContent, isStable) => { const lines = m3uContent.split('\n'); const channels = {}; - const regex = /group-title="([^"]+)"/ - - for (const line of lines) { + const regex = /group-title="([^"]+)"/; + + for (let i = 0; i < lines.length; i++) { + const line = lines[i]; if (line.startsWith('#EXTINF:-1')) { try { + const nextLine = lines[i + 1]; + if (!nextLine || nextLine.startsWith('#')) continue; + const countryMatch = line.match(regex); if (!countryMatch) continue; const country = countryMatch[1].trim(); const channelName = line.split(',').pop().trim(); + const streamUrl = nextLine.trim(); if (!channels[country]) { channels[country] = {}; } - // Přidáme kanál, pouze pokud ještě neexistuje, abychom předešli duplicitám if (!channels[country][channelName]) { - channels[country][channelName] = { name: channelName, stable: isStable }; + channels[country][channelName] = { name: channelName, stable: isStable, url: streamUrl }; } } catch (e) { console.error("Chyba při parsování řádku:", line, e); @@ -169,6 +189,12 @@ {isOpen && ( + + + + + + {channels.map(channel => ( @@ -180,6 +206,9 @@ } + ))} @@ -196,7 +225,6 @@ useEffect(() => { const fetchAndParseData = async () => { try { - // Načtení obou M3U souborů const [ariaRes, ariaPlusRes] = await Promise.all([ fetch('aria.m3u'), fetch('aria+.m3u') @@ -205,16 +233,12 @@ const ariaText = await ariaRes.text(); const ariaPlusText = await ariaPlusRes.text(); - // Parsování const stableChannels = parseM3U(ariaText, true); const unstableChannels = parseM3U(ariaPlusText, false); - // Sloučení dat: nestabilní kanály nepřepíší stabilní, pokud mají stejné jméno const allChannels = { ...stableChannels }; for (const country in unstableChannels) { - if (!allChannels[country]) { - allChannels[country] = {}; - } + if (!allChannels[country]) allChannels[country] = {}; for (const channelName in unstableChannels[country]) { if (!allChannels[country][channelName]) { allChannels[country][channelName] = unstableChannels[country][channelName]; @@ -222,7 +246,6 @@ } } - // Převod na pole pro snadné renderování a seřazení const formattedData = Object.keys(allChannels).sort().map(country => ({ country, channels: Object.values(allChannels[country]).sort((a, b) => a.name.localeCompare(b.name)) @@ -251,9 +274,14 @@

Aria provides a curated collection of IPTV channels from around the world. The channels are organized by their countries. Unlike our predecessor Mystique, this git is only using official streams, tvheadends, astra control panel among others.

+
+

Playlist Files

+

Download aria.m3u (Stable Streams)

+

Download aria+.m3u (Potentially Unstable Streams)

+

Want to help us?

- You can go to the Issues tab on GitHub to request a channel-specific action (e.g., removing a dead link, adding a new channel). + You can go to the Issues tab on GitHub to request a channel-specific action.

ChannelStream Link
+ Link +