Introduction
MeTube wraps yt-dlp in a clean web interface so you can paste a URL and download video or audio without touching the command line. Self-hosting means your downloads stay on your server with no third-party service involved.
What MeTube Does
- Downloads video and audio from YouTube, Vimeo, and hundreds of other supported sites
- Provides format and quality selection through a simple web form
- Queues multiple downloads with progress tracking in the browser
- Extracts audio-only files in MP3, M4A, or other formats
- Integrates with browser extensions for one-click downloads
Architecture Overview
MeTube is a Python Flask application with an Angular frontend. It shells out to yt-dlp for the actual downloading and FFmpeg for post-processing (format conversion, thumbnail embedding). The web UI communicates with the backend via a REST API and WebSocket for real-time progress updates.
Self-Hosting & Configuration
- Run the Docker container with a volume mount for the downloads directory
- Set output templates and default quality via environment variables
- Configure a dark theme toggle and custom download paths
- Optionally set authentication via a reverse proxy for private access
- Supports running behind Nginx or Traefik with path-based routing
Key Features
- Clean responsive web UI with real-time download progress
- Supports playlist downloads with individual track selection
- Audio extraction with metadata and thumbnail embedding
- Queue management with pause, resume, and cancel controls
- Automatic updates to yt-dlp within the container
Comparison with Similar Tools
- yt-dlp (CLI) — command-line only; MeTube adds a graphical web interface
- Tube Archivist — full media library management; MeTube focuses on quick downloads
- Stacher — desktop GUI for yt-dlp; MeTube is web-based and self-hosted
- AllTube — similar web UI but less actively maintained
- Invidious — alternative YouTube frontend with download links but no queue management
FAQ
Q: Which sites does MeTube support? A: Any site supported by yt-dlp, which includes YouTube, Vimeo, Twitter, Reddit, and hundreds of others.
Q: Can I download entire playlists? A: Yes, paste a playlist URL and MeTube will queue all videos for download.
Q: Does it support authentication? A: MeTube itself does not have built-in auth, but you can place it behind a reverse proxy with basic auth or SSO.
Q: How does it stay up to date with site changes? A: The container can auto-update yt-dlp on startup, so format extraction stays current as sites change.