Initial vault setup
This commit is contained in:
@@ -0,0 +1,115 @@
|
||||
---
|
||||
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é)
|
||||
|
||||
```yaml
|
||||
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
|
||||
|
||||
```bash
|
||||
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
|
||||
|
||||
1. **Comptes utilisateurs** : *Settings → Users* → créer plusieurs utilisateurs avec des permissions distinctes (admin, downloader, viewer).
|
||||
2. **Abonnements** : *Subscriptions* → ajouter des chaînes YouTube à scraper. Configurer la fréquence (`subscription_check_interval`).
|
||||
3. **Playlists** : ajouter des playlists YouTube à suivre ; YTM propose de télécharger les nouvelles entrées automatiquement.
|
||||
4. **File d'attente** : supporte la **priorité**, la **pause/reprise**, l'**annulation sélective** et la **planification horaire**.
|
||||
5. **Cookies** : monter un `cookies.txt` dans `/youtube_dl/cookies/` pour les vidéos soumises à authentification.
|
||||
6. **Format** : `YDL_OPTIONS` permet de passer des flags yt-dlp avancés (qualité max, sponsorblock, format codec).
|
||||
7. **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
|
||||
Reference in New Issue
Block a user