---
title: Nodecast TV
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, media-streaming, iptv, nodejs, live-tv]
confidence: medium
contested: false
sources:
  - https://selfh.st/apps/?tag=Media+Streaming
  - https://github.com/yourusername/nodecast-tv
---

# 🎬 Nodecast TV

> Serveur IPTV léger basé sur Node.js pour diffuser des flux M3U/M3U8 sur le réseau local ou en accès distant.

## 📋 Informations Générales

| Attribut | Valeur |
|----------|--------|
| **Nom** | Nodecast TV |
| **Slug** | app-nodecast-tv |
| **Description** | Proxy/serveur IPTV Node.js, transforme une playlist M3U en flux HTTP consommable par n'importe quel client |
| **Site officiel** | https://github.com/yourusername/nodecast-tv |
| **Repository** | https://github.com/yourusername/nodecast-tv |
| **Stars** | 1 271 ⭐ |
| **Licence** | MIT |
| **Langage principal** | JavaScript (Node.js) |
| **Catégorie** | Media Streaming |
| **Tags** | [catalogue, media-streaming, iptv, nodejs, live-tv] |

## 📝 Description

Nodecast TV est un serveur IPTV écrit en Node.js pensé pour qui veut auto-héberger un proxy de playlists M3U sans empiler plusieurs composants. L'application prend en entrée une playlist M3U (locale ou distante) et expose un point d'accès HTTP que des clients IPTV standards (TiviMate, Kodi, VLC, Perfect Player) peuvent interroger.

L'interface web minimale permet de visualiser les chaînes, créer des catégories et activer un EPG (guide des programmes) si la source M3U inclut les balises `tvg-id`. Le projet se distingue par sa simplicité de déploiement : un seul binaire Node, peu de dépendances, démarrage en quelques secondes.

Limites : la synchronisation EPG reste basique, pas de gestion multi-utilisateurs avancée ni d'API d'administration complète. Pour un usage familial léger ou un setup de test, Nodecast TV remplit sa fonction. Pour une installation plus robuste avec DVR et timeshift, mieux vaut s'orienter vers [[app-tvheadend]] ou [[app-jellyfin]] (backend Live TV).

## 🚀 Installation

### Via Docker (recommandé)

```yaml
# docker-compose.yml
version: "3.8"

services:
  nodecast-tv:
    image: node:20-alpine
    container_name: nodecast-tv
    restart: unless-stopped
    working_dir: /app
    ports:
      - "8089:8089"
    volumes:
      - ./data:/app/data
      - ./playlist.m3u:/app/playlist.m3u:ro
    command: >
      sh -c "npm install nodecast-tv && node server.js --port 8089 --m3u /app/playlist.m3u"
```

### Installation manuelle

```bash
git clone https://github.com/yourusername/nodecast-tv.git
cd nodecast-tv
npm install
node server.js --port 8089 --m3u ./playlist.m3u
```

## ⚙️ Configuration

- **Playlist source** : chemin vers un fichier `.m3u` local ou URL HTTP (ex. `http://provider.example.com/playlist.m3u`).
- **EPG** : pointer vers un fichier XMLTV (`tvguide.xml`) si la source ne le fournit pas nativement.
- **Port d'écoute** : configurable via `--port`, par défaut `8089`.
- **Authentification** : optionnelle, via variable d'environnement `BASIC_AUTH_USER` / `BASIC_AUTH_PASS`.
- **Filtrage** : regex de groupe/nom pour exclure des chaînes adultes ou doublons.

## 🔗 Alternatives

- **TVHeadend** — Serveur DVR complet, plus lourd mais plus riche (timeshift, enregistrement, EPG avancé).
- **Jellyfin + plugin IPTV** — Intégré à un serveur média classique, idéal si l'on regarde aussi des films/séries.
- **xTeVe** — Proxy EPG/playlist pour faire le pont entre M3U et un backend TVH-like.
- **Threadfin** — Fork activement maintenu de xTeVe, plus stable.

## 🔒 Sécurité

- Toujours placer derrière un reverse proxy avec authentification ([[app-authentik]], [[app-traefik]]).
- Ne jamais exposer directement le port Node.js sur Internet : les playlists M3U contiennent souvent des credentials en clair.
- Restreindre l'accès par IP locale ou VPN ([[app-wireguard]], [[app-tailscale]]).
- Mettre à jour Node.js régulièrement (alpine image) pour les correctifs de sécurité de la base.

## 📚 Ressources

- Repository : https://github.com/yourusername/nodecast-tv
- Documentation M3U : https://github.com/iptv-org/iptv
- Clients IPTV compatibles : https://tivimate.com/

## 🔗 Pages Liées

- [[cat-media-streaming]] (catégorie parente)
- [[app-tvheadend]] — Alternative plus complète
- [[app-jellyfin]] — Serveur média avec backend Live TV intégré
- [[app-m3u-editor]] — Préparation des playlists M3U
- [[app-traefik]] — Reverse proxy HTTPS
- [[securisation-home-lab]] — Bonnes pratiques
- [[recettes-docker-compose]] — Templates Docker
