Skip to content

infinitel8p/Extreme-InfiniTV

Extreme InfiniTV app icon - cross-platform IPTV player

Extreme InfiniTV

A cross-platform IPTV player for Xtream Codes and M3U / M3U8 playlists.

Live TV with EPG, movies, series, offline downloads, and TV-remote (D-pad) navigation.
Ships on Windows (Microsoft Store + installer), Android phone / tablet / TV (Google Play), macOS, Linux, and the web.

Get Extreme InfiniTV on the Microsoft Store Get Extreme InfiniTV on Google Play Download Extreme InfiniTV from GitHub Releases

Latest release GitHub downloads GitHub stars Supported platforms: Windows, macOS, Linux, Android

Issues Discussions

Screenshots

Extreme InfiniTV home screen showing Live TV, Movies, and Series tiles with Continue Watching strip

More screenshots (Live TV, EPG, Movies, Series, Android TV, mobile)

Desktop

Live TV channel list with inline EPG showing now/next programmes Movies poster grid with category filtering Series detail view with seasons and episodes
Full XMLTV schedule grid for the EPG page Settings page with playlists, display, network, and downloads Favorites page showing the cross-playlist union of starred items

Android TV (10-foot UI, D-pad focus)

Extreme InfiniTV home screen on Android TV Live TV on Android TV with D-pad focus on the channel list Movies poster grid on Android TV

Phone (portrait, touch)

Extreme InfiniTV home screen on a phone in portrait Live TV on a phone with bottom navigation Series poster grid on a phone in portrait

Features

  • Two backends, one UI. Sign in with Xtream Codes credentials (host / port / user / pass) or paste a direct .m3u / .m3u8 URL. The app detects the mode automatically.
  • Live TV with category filtering, channel search, virtualised list, and inline EPG (now / next / today).
  • Movies (VOD) and Series library with poster grids, detail dialogs, and season / episode navigation.
  • Full schedule grid on the EPG page, with timezone-aware "all times local" rendering.
  • Picture-in-picture and a Video.js-powered player tuned for HLS.
  • Multiple playlists, switchable from the sidebar without re-entering credentials.
  • TV-first navigation. Spatial focus (D-pad / arrow keys) is wired across the whole app via spatial-navigation-polyfill. Hit targets, focus rings, and reflow tested for 10-foot UI.
  • Light and dark themes, both first-class. Honours prefers-color-scheme, prefers-reduced-motion, and prefers-contrast.
  • Adjustable font scale (Default / Medium / Large / X-Large) plus a responsive root size that scales the whole UI on 4K and 8K displays.
  • Self-updating Windows desktop build via the Tauri updater (signed with minisign, served from GitHub Releases).
  • Offline-friendly persistence. Credentials and preferences live in the OS app-data dir on Tauri builds, with a localStorage / cookie fallback on the web build.

Install

Platform How Updates
Windows (Microsoft Store) apps.microsoft.com Microsoft Store
Windows (sideload) NSIS .exe (or .msi) from Releases In-app auto-updater
macOS (Apple Silicon + Intel) Universal .dmg from Releases In-app auto-updater
Linux (Debian / Ubuntu / Mint) .deb from Releases Manual
Linux (Fedora / openSUSE / RHEL) .rpm from Releases Manual
Linux (any distro, portable) .AppImage from Releases In-app auto-updater
Android phone / tablet Google Play Play Store
Android TV Same APK, sideload via ADB or use Play Store on supported devices Play Store
Web preview Build with pnpm build and serve dist/ (no auto-update, no native features) Manual

via winget

The Microsoft Store listing is federated through winget, so you can install without opening the Store:

winget install --id 9NN162Z0WXSR --source msstore

macOS: "Extreme InfiniTV.app" cannot be opened

The macOS build is not yet notarized by Apple, so Gatekeeper blocks it on first launch with a message like "Apple could not verify Extreme InfiniTV.app is free of malware". After dragging the app from the .dmg into /Applications, remove the quarantine flag from a Terminal:

xattr -dr com.apple.quarantine "/Applications/Extreme InfiniTV.app"

Then open the app normally. You only need to do this once per install.

Develop

Requirements: pnpm (the package manager is pinned in package.json), Node 20+, the Rust toolchain (only for tauri commands), and Android Studio for tauri:android.

pnpm install
pnpm dev                  # Astro + Svelte at http://localhost:4321
pnpm tauri dev            # Native desktop shell (auto-spawns pnpm dev)
pnpm tauri:android        # Android dev shell

To test the dev server on another device on the LAN (phone, TV), set XTREAM_HMR_HOST to your machine's LAN IP so Vite advertises the right HMR host:

XTREAM_HMR_HOST=192.168.1.50 pnpm dev

Tests run with Vitest (pnpm test); the suite covers pure-function libs in tests/. Lint with ESLint flat config (pnpm lint / pnpm lint:fix); no Prettier. TypeScript is in strict mode (tsconfig.json extends astro/tsconfigs/strict); the @/* alias maps to src/*.

Credits

Copyright (c) 2025 Ludovico Ferrara.

License

Extreme InfiniTV is released under the GNU General Public License v3.0 or later. You are free to use, study, share, and modify it; any distributed fork or derivative must remain under the same license and ship its source.