youtube-dl-server

youtube-dl-server

Web and REST interface to download videos using yt-dlp or youtube-dl

306stars
33forks
Last commit: 17d ago
Repo age: 6y old

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:

Share:

Similar Services

Jellyfin

Jellyfin

Self-hosted media server for managing and streaming your library

47.7k
4.3k
Last commit: 2d ago

Jellyfin is a free, self-hosted media server to organize, manage, and stream movies, TV, music, and photos to web, mobile, and TV clients.

Alternative to:
Plex
Plex
+19
Cobalt

Cobalt

Ad-free web media downloader for public social platforms

38.2k
3.1k
Last commit: 28d ago

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...

Alternative to:
iTubeGo
iTubeGo
+4
SRS (Simple Realtime Server)

SRS (Simple Realtime Server)

High-performance real-time media server for live streaming and WebRTC

28.4k
5.6k
Last commit: 1mo ago

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.

Alternative to:
Wowza Streaming Cloud
Wowza Streaming Cloud
+8
Kodi

Kodi

Open source home theater and media center software

20.3k
6.5k
Last commit: 1d ago

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.

Alternative to:
Microsoft Windows Media Player
Microsoft Windows Media Player
+7
Invidious

Invidious

Privacy-focused alternative web front-end for YouTube

18.4k
2.1k
Last commit: 17h ago

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

Alternative to:
YouTube
YouTube
PeerTube

PeerTube

Federated video hosting and streaming with P2P delivery

14.4k
1.7k
Last commit: 3d ago

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

Alternative to:
YouTube
YouTube
+8