5.9 KiB
title: YoutubeDL-Material created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, downloads, video, youtube, nodejs, yt-dlp, material-ui, subscriptions] confidence: high contested: false sources: [https://selfh.st/apps/?tag=downloads, https://github.com/Tzahi12345/YoutubeDL-Material]
YoutubeDL-Material
GUI web complète pour yt-dlp avec support des playlists, abonnements à des chaînes, multi-utilisateurs, Material Design et un système de file d'attente avancé. Le pendant riche de app-metube.
| Métadonnée | Valeur |
|---|---|
| Site web | https://youtubedl-material.tzahi.fr/ |
| GitHub | https://github.com/Tzahi12345/YoutubeDL-Material |
| License | AGPL-3.0 |
| Langage | TypeScript (Node.js / Express + Angular / Material UI) |
| Étoiles GitHub | 323 ⭐ |
| Dernière MAJ | 2026-05 |
| Catégorie | cat-downloads |
Description
YoutubeDL-Material (ou YTM) est une GUI web Material Design pour yt-dlp, écrite en TypeScript avec un backend Node.js/Express et un frontend Angular. Là où app-metube propose une interface minimaliste de type « paste-URL-and-go », YTM va beaucoup plus loin : abonnements à des chaînes YouTube (synchronisation automatique), playlists persistantes, file d'attente avancée, gestion multi-utilisateurs avec permissions granulaires, historique de téléchargements, et téléchargement de fichiers multiples en parallèle.
L'application gère en interne une base de données SQLite (par défaut) qui stocke les abonnements, l'historique, les comptes utilisateurs et les métadonnées des fichiers. Une API REST exposée permet l'intégration avec des outils externes (Home Assistant, scripts Bash, etc.). Le frontend Material UI est responsive et offre une expérience proche de YouTube lui-même, avec un lecteur vidéo intégré (via video.js) et un lecteur audio.
YoutubeDL-Material est un projet maintenu activement (release mensuelle), régulièrement mis à jour pour suivre les changements d'API de YouTube. Le principal cas d'usage est le « Personal YouTube » : héberger une instance privée de sa bibliothèque de chaînes favorites, avec téléchargement automatique des nouvelles vidéos et consultation hors-ligne.
Installation
Option 1 : Docker Compose (recommandé)
services:
youtubedl-material:
image: tzahi12345/youtubedl-material:latest
container_name: youtubedl-material
restart: unless-stopped
ports:
- "8998:8998"
environment:
- TZ=Europe/Paris
- YDLM_DEFAULT_AUDIO_DIRECTORY=/youtube_dl/audio
- YDLM_DEFAULT_VIDEO_DIRECTORY=/youtube_dl/video
volumes:
- ./config:/youtube_dl/config
- ./youtube_dl:/youtube_dl
- ./downloads:/downloads
UI sur http://localhost:8998. Compte admin créé au premier démarrage, à modifier immédiatement.
Option 2 : Installation manuelle
git clone https://github.com/Tzahi12345/YoutubeDL-Material
cd YoutubeDL-Material
npm install
node src/back-end/index.js
# par défaut sur http://localhost:8998
Configuration
- Comptes utilisateurs : Settings → Users → créer plusieurs utilisateurs avec des permissions distinctes (admin, downloader, viewer).
- Abonnements : Subscriptions → ajouter des chaînes YouTube à scraper. Configurer la fréquence (
subscription_check_interval). - Playlists : ajouter des playlists YouTube à suivre ; YTM propose de télécharger les nouvelles entrées automatiquement.
- File d'attente : supporte la priorité, la pause/reprise, l'annulation sélective et la planification horaire.
- Cookies : monter un
cookies.txtdans/youtube_dl/cookies/pour les vidéos soumises à authentification. - Format :
YDL_OPTIONSpermet de passer des flags yt-dlp avancés (qualité max, sponsorblock, format codec). - Notification : webhooks sortants (Discord, Telegram, NTFY) à la fin d'un téléchargement.
Alternatives
Open Source
- app-metube — Plus minimaliste, pas d'abonnements, plus rapide à déployer
- app-cobalt — API-first moderne, pas de base de données, plus simple
- Tube Archivist — Bibliothèque de chaînes YouTube avec focus sur la collection (Plex/Jellyfin)
- Piped / Invidious — Frontends alternatifs à YouTube (streaming, pas de téléchargement)
- app-plex / app-jellyfin — Media servers (YTM peut alimenter leur bibliothèque)
Propriétaires
- YouTube Premium — Téléchargement hors-ligne officiel, limité à l'app mobile
- 4K Video Downloader — Desktop, pas de webapp
- Y2mate — Site tiers, adwares
Sécurité
- Changer le mot de passe admin créé au premier démarrage
- Activer l'authentification obligatoire (par défaut, YTM peut tourner en mode « open access » à désactiver)
- Restreindre l'accès via reverse proxy authentifié (app-authelia, app-nginx-proxy-manager)
- Les abonnements peuvent scrapper massivement YouTube : configurer un rate-limit raisonnable pour ne pas être banni
- ⚠️ Le téléchargement de contenu protégé par le droit d'auteur est illégal dans la plupart des juridictions
- Les cookies YouTube doivent être renouvelés régulièrement (expiration rapide)
Ressources
- Site officiel : https://youtubedl-material.tzahi.fr/
- Code source : https://github.com/Tzahi12345/YoutubeDL-Material
- Documentation : https://github.com/Tzahi12345/YoutubeDL-Material/wiki
- yt-dlp (backend) : https://github.com/yt-dlp/yt-dlp
- Discord : https://discord.gg/AdFUBKx
Pages Liées
- cat-downloads — Vue d'ensemble de la catégorie Downloads
- app-metube — Alternative minimaliste
- app-cobalt — Alternative API-first
- app-authelia — SSO pour restreindre l'accès
- app-jellyfin / app-plex — Media servers qui peuvent exploiter les fichiers
- recettes-docker-compose — Templates Docker