# IPTVnator - IPTV Player Application

IPTVnator icon

Release GitHub Workflow Status Releases Codecov

**IPTVnator**ย is a video player application that provides support for the playback of IPTV playlists (m3u, m3u8). The application allows to import playlists by using remote URLs or per file upload from the file system. Additionally there is a support of EPG information XMLTV-based which can be provided by URL. The application is an cross-platform and open source project based on Electron and Angular. ![IPTVnator: Channels list, player and epg list](./iptv-dark-theme.png) ## Features - M3u and M3u8 playlists support ๐Ÿ“บ - Upload playlists from a file system ๐Ÿ“‚ - Add remote playlists via URL ๐Ÿ”— - Playlists auto-update feature - Open playlist from the file system - Search for channels ๐Ÿ” - EPG support (TV Guide) with detailed info - TV archive/catchup/timeshift - Group-based channels list - Save channels as favorites - HTML video player with hls.js support or Video.js based player - Internalization, currently 3 languages are supported (en, ru, de) - Set custom "User Agent" header for a playlist - Light and Dark theme ## Screenshots: | Welcome screen: Playlists overview | Main player interface with channels sidebar and video player | | :----------------------------------------------------------: | :-------------------------------------------------------: | | ![Welcome screen: Playlists overview](./playlists.png) | ![Sidebar with channel and video player](./iptv-main.png) | | Welcome screen: Add playlist via file upload | Welcome screen: Add playlist via URL | | ![Welcome screen: Add playlist via file upload](./iptv-upload.png) | ![Welcome screen: Add playlist via URL](./upload-via-url.png) | | EPG Sidebar: TV guide on the right side | General application settings | ![EPG: TV guide on the right side](./iptv-epg.png) | ![General app settings](./iptv-settings.png) | | Playlist settings | | ![Playlist settings](./iptv-playlist-settings.png) | | *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](https://github.com/4gray/iptvnator/releases). **IPTVnator** is also available as a snap package: ``` $ sudo snap install iptvnator ``` Also available as an Arch PKG, [iptvnator-bin](https://aur.archlinux.org/packages/iptvnator-bin/), in the AUR (using your favourite AUR-helper, .e.g. `yay`) ``` $ yay -S iptvnator-bin ``` [![Get it from the Snap Store](https://snapcraft.io/static/images/badges/en/snap-store-black.svg)](https://snapcraft.io/iptvnator) Buy Me A Coffee ## How to build Requirements: node.js with npm. 1. Clone this repository and install all project dependencies with: ``` $ npm install ``` 2. To build the application on your local machine use one of the following commands: ``` # linux $ npm run electron:build:linux ``` ``` #mac $ npm run electron:build:mac ``` ``` # windows $ npm run electron:build:windows ``` This command will produce the distributable assets in the `release` folder based on the configuration from electron-builder which is stored in `electron-builder.json` and `package.json`. Check the [API description of electron-builder](https://www.electron.build/) and adapt the configuration if you need some special configuration for you environment. *Note: Donโ€™t expect that you can build app for all platforms on one platform. [Read details](https://www.electron.build/multi-platform-build)* ## Disclaimer IPTVnator doesn't provide any playlists or other digital content.