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.
- Clone this repository
git clone https://github.com/kolle86/xtream-web-tv.git
- 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".
- Start container
docker compose up -d
The application now runs on http://localhost:4000
| 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 * * * |
| Category | Framework |
|---|---|
| Frontend | |
| Backend | |
| Database | |
| CI/CD |
