youtube-dl-server
Web and REST interface to download videos using yt-dlp or youtube-dl
A lightweight web and REST frontend for yt-dlp / youtube-dl that runs on a server and saves downloaded media to the host filesystem. It provides both a browser UI and an API for triggering and managing downloads, and is commonly deployed via Docker.
Key Features
- Web-based user interface plus a REST API for programmatic downloads and integration
- Supports yt-dlp or legacy youtube-dl backends for broad site support
- Docker image and docker-compose examples for easy deployment; can also run directly with Python
- Configurable via a YAML config file including global options, cache and output paths, and a metadata DB path
- Profiles support to define reusable download option sets (format, audio extraction, output directories, etc.)
- Saves downloaded files to a host-mounted directory and stores metadata in a local database (configurable path)
- Bookmarklet and simple curl/fetch examples for one-click or scripted submissions
- Frontend implemented with a JavaScript framework alongside a Python ASGI backend
Use Cases
- Centralized server for archiving YouTube videos, podcasts, lectures, and playlists
- Triggering downloads from other services or browser bookmarklets via the REST API
- Running scheduled or bulk downloads in a containerized environment with configurable profiles
Limitations and Considerations
- The project does not bundle HTTPS termination; it is intended to be placed behind a reverse proxy for TLS
- Upstream youtube-dl releases may be outdated; using yt-dlp is recommended for better site compatibility
- Some format conversions and audio extraction require external tools such as ffmpeg to be available
- No built-in authentication or access-control features are documented, so deploy behind an authenticated proxy for public access
In summary, youtube-dl-server provides a simple, Docker-friendly web and API front end to yt-dlp/youtube-dl for managing server-side downloads. It is configuration-driven with profiles and is suitable for automating or centralizing media downloads on a server.
Categories:
Tags:
Tech Stack:
Similar Services

Jellyfin
Self-hosted media server for managing and streaming your library
Jellyfin is a free, self-hosted media server to organize, manage, and stream movies, TV, music, and photos to web, mobile, and TV clients.

Cobalt
Ad-free web media downloader for public social platforms
Cobalt is a self-hostable web media downloader for saving publicly accessible videos and audio from supported social platforms via a simple paste-a-link interface and API...
SRS (Simple Realtime Server)
High-performance real-time media server for live streaming and WebRTC
SRS (Simple Realtime Server) is a high-efficiency media server supporting RTMP, WebRTC, HLS, HTTP-FLV, SRT, MPEG-DASH, and GB28181 for real-time streaming.

Kodi
Open source home theater and media center software
Kodi is an open source media center for organizing and playing local and networked video, music, and photos with a TV-friendly interface and add-on ecosystem.


Invidious
Privacy-focused alternative web front-end for YouTube
Invidious is a lightweight, privacy-focused alternative front-end for YouTube with subscriptions, playlists, and an API—without Google accounts, ads, or tracking.

PeerTube
Federated video hosting and streaming with P2P delivery
PeerTube is a decentralized, ActivityPub-federated video hosting platform with live streaming, P2P WebRTC delivery, and customizable community-run instances.
JavaScript
Uvicorn
Docker
Python