Skip to content

Web application built with Node.js and Bootstrap for streaming live channels from an Xtream Codes playlist.

Notifications You must be signed in to change notification settings

kolle86/xtream-web-tv

Repository files navigation

📺 Xtream Web TV

Live TV Streaming Web App
Web application built with Node.js and Bootstrap for streaming live channels from an Xtream Codes playlist.

  • Project Goal - The goal of this project is to provide a simple and intuitive interface for browsing bouquets and channels, allowing you to quickly find and play your desired channel.
  • Requirements - An Xtream Codes account is required. This application does not provide any streaming sources.
  • Supported Content - Only live TV is supported—movies and series are not included.
  • Responsive Design - The app is fully responsive and works seamlessly on both desktop and mobile devices.
  • Customization Options - Users can customize their experience by:
    • Selecting which bouquets to display
    • Enabling or disabling Picons
  • Electronic Program Guide (EPG) - An integrated electronic program guide (EPG) is available, allowing users to see upcoming programs and schedules.
  • Player Features - The project uses hls.js as the player, which supports Picture-in-Picture (PiP) mode for an enhanced viewing experience.
  • Note - Due to browser codec limitations and potential HTTP/HTTPS conflicts, some streams may not be playable.

Projekt Screenshot

🚀 Installation

Docker compose

  1. Clone this repository
git clone https://github.com/kolle86/xtream-web-tv.git
  1. Adjust the docker-compose.yml to your needs and put your provider details:
services:
  xtream-web-tv:
    image: kolstr/xtream-web-tv
    container_name: xtream-web-tv
    restart: unless-stopped
    environment:
      - XTREAMAPIURL=http://provider.net:8080
      - XTREAMUSER=username
      - XTREAMPASSWORD=password
      - CRON_UPDATE="15 */12 * * *"
    ports:
      - "4000:4000"
    volumes:
      - xtream-web-tv:/app/data

For an explanation of the environment variables see chapter "Configuration".

  1. Start container
docker compose up -d

The application now runs on http://localhost:4000

⚙️ Configuration

Env-Variable Explanation Required Default
XTREAMAPIURL Xtreme Codes Provider URL Required
XTREAMUSER Your Xtream Codes username Required
XTREAMPASSWORD Your Xtream Codes password Required
CRON_UPDATE Update frequency for the channel database in cron format Optional 15 */12 * * *

🛠️ Technologie Stack

Category Framework
Frontend Bootstrap hls.js
Backend Node.js Express
Database SQLite
CI/CD Docker

About

Web application built with Node.js and Bootstrap for streaming live channels from an Xtream Codes playlist.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •