Repolode
technomancer702

technomancer702/nodecast-tv

A self-hosted web player for streaming Live TV, movies and series from your Xtream Codes or M3U IPTV provider in the browser.

Stars
1,595
Forks
255
Open issues
34
Last commit
5 days ago

What is it?

nodecast-tv is a web-based IPTV player that connects to Xtream Codes or M3U playlist providers and plays Live TV, movies (VOD) and series in the browser. It includes a interactive EPG grid guide with a 24-hour timeline, category grouping and search, and a favorites system shared across channels, movies and series.

The app is designed for large libraries, using virtual scrolling and batch rendering to handle playlists with 7000+ channels. It can be deployed with Node.js or Docker, stores data in SQLite, and supports admin and viewer roles with optional OIDC single sign-on through providers such as Authentik and Keycloak.

For streams browsers cannot play directly, it uses FFmpeg to detect codecs and remux or transcode media, with hardware encoding options including NVENC, AMF, QuickSync and VAAPI. It also offers a backend proxy for CORS-restricted sources and audio downmix presets for 5.1 sources.

Key features

  • 01Live TV playback with fast channel switching, category grouping and search.
  • 02Interactive TV guide (EPG) with a 24-hour timeline.
  • 03Movies and series sections with posters, metadata and season episode lists.
  • 04Support for Xtream Codes and M3U playlist sources.
  • 05Hardware transcoding via NVENC, AMF, QuickSync and VAAPI, with automatic codec detection.
  • 06User login with admin and viewer roles, plus OIDC single sign-on.

Use cases

  • Watching a self-hosted or third-party IPTV subscription from a browser on a home network.
  • Running a shared media player for a household with separate viewer accounts.
  • Browsing large channel lists with an EPG guide instead of a set-top box app.
  • Playing IPTV sources through a middleware tool such as TVHeadend or xTeVe.

Quick start

  1. 1

    Clone the repository

    git clone https://github.com/technomancer702/nodecast-tv.git
  2. 2

    Install dependencies

    npm install
  3. 3

    Start the development server

    npm run dev
  4. 4

    Open http://localhost:3000 in your browser

Things to know

  • Licensed under GPL-3.0, a copyleft license that requires derivative works to be open-sourced under the same terms.
  • You must supply your own Xtream Codes or M3U IPTV provider; the app does not include any content.
  • Some codecs such as HEVC and AC3/EAC3 depend on FFmpeg transcoding, and hardware acceleration needs a compatible GPU.

In collections

Topics

FAQ

What is nodecast-tv?
A self-hosted web player for streaming Live TV, movies and series from your Xtream Codes or M3U IPTV provider in the browser. nodecast-tv is a web-based IPTV player that connects to Xtream Codes or M3U playlist providers and plays Live TV, movies (VOD) and series in the browser. It includes a interactive EPG grid guide with a 24-hour timeline, category grouping and search, and a favorites system shared across channels, movies and series.
Is nodecast-tv free to use? What license does it have?
nodecast-tv is open source under the GPL-3.0 license. Check the license terms before using it in commercial products.
Is nodecast-tv still maintained?
Actively maintained. The last commit to nodecast-tv was on Nov 2, 2026.
What can I use nodecast-tv for?
Watching a self-hosted or third-party IPTV subscription from a browser on a home network. Running a shared media player for a household with separate viewer accounts. Browsing large channel lists with an EPG guide instead of a set-top box app. Playing IPTV sources through a middleware tool such as TVHeadend or xTeVe.
How do I install nodecast-tv?
Clone the repository: git clone https://github.com/technomancer702/nodecast-tv.git Install dependencies: npm install Start the development server: npm run dev Open http://localhost:3000 in your browser
Where can I get nodecast-tv?
The source code and installation instructions are on GitHub: https://github.com/technomancer702/nodecast-tv

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects