- Enableplayer global config and component options:
- set Artplayer.AUTO_PLAYBACK_TIMEOUT to 10000 to reduce autoplay
timeouts.
- enable autoPlayback, playsInline, airplay, backdrop, mutex and set
theme on Artplayer instance to improve playback behaviour and UI.
- add autoSize, autoMini, pip, screenshot, aspectRatio and fullscreen
settings for a consistent feature set.
- Harden channel URL check to avoid null errors:
- use optional chaining when checking channel.url for m3u8.
- Move StreamFormat import ordering and clean unused enum entry:
- remove DPlayer from VideoPlayer enum and related commented code.
- remove DPlayer component imports, declarations and template branch,
simplifying player selection and eliminating dead code.
- Tidy component decorator formatting and fix template array trailing
commas to preserve style consistency.
These changes replace the deprecated/removed DPlayer integration with a
fully configured Artplayer, improve runtime safety, and clean up unused
code.
IPTVnator - IPTV Player Application
Telegram channel for discussions
IPTVnator is a video player application that provides support for IPTV playlist playback (m3u, m3u8). The application allows users to import playlists using remote URLs or by uploading files from the local file system. Additionally, it supports EPG information in XMLTV format which can be provided via URL.
The application is a cross-platform, open-source project built with Electron Tauri and Angular.
⚠️ Note: IPTVnator does not provide any playlists or other digital content. The channels and pictures in the screenshots are for demonstration purposes only.
Features
- M3u and M3u8 playlist support 📺
- Xtream Code (XC) and Stalker portal (STB) support
- External player support - MPV, VLC
- Add playlists from the file system or remote URLs 📂
- Automatic playlist updates on application startup
- Channel search functionality 🔍
- EPG support (TV Guide) with detailed information
- TV archive/catchup/timeshift functionality
- Group-based channel list
- Favorite channels management
- Global favorites aggregated from all playlists
- HTML video player with HLS.js support or Video.js-based player
- Internationalization with support for 16 languages:
- Arabic
- Moroccan arabic
- English
- Russian
- German
- Korean
- Spanish
- Chinese
- Traditional chinese
- French
- Italian
- Turkish
- Japanese
- Dutch
- Belarusian
- Polish
- Custom "User Agent" header configuration for playlists
- Light and Dark themes
- Docker version available for self-hosting
Screenshots:
Note: First version of the application which was developed as a PWA is available in an extra git branch.
Download
Download the latest version of the application for macOS, Windows, and Linux from the release page.
Alternatively, you can install the application using one of the following package managers:
Homebrew
$ brew install iptvnator
Snap
$ sudo snap install iptvnator
Arch
Also available as an Arch PKG, iptvnator-bin, in the AUR (using your favourite AUR-helper, .e.g. yay)
$ yay -S iptvnator-bin
Gentoo
You can install IPTVnator from the gentoo-zh overlay
sudo eselect repository enable gentoo-zh
sudo emerge --sync gentoo-zh
sudo emerge iptvnator-bin
How to Build and Develop
Requirements:
- Node.js with npm
- Rust (required for tauri)
-
Clone this repository and install project dependencies:
$ npm install -
Start the application:
$ npm run tauri dev
This will open the Tauri version in a separate window, while the PWA version will be available at http://localhost:4200.
To run only the Angular app without Tauri, use:
$ npm run serve
Disclaimer
IPTVnator doesn't provide any playlists or other digital content.








