wytui

A self-hosted web UI for yt-dlp. Download videos from YouTube and 1000+ sites with a beautiful dark interface.

Features

Everything you need to manage video downloads from a single interface.

Download Profiles

Pre-configured presets for 4K, 1080p, 720p, 480p video and MP3, AAC, FLAC audio. Save custom profiles with any yt-dlp flags.

Two-Tier Storage

Temporary cache with configurable quota plus a permanent library organized by uploader. Promote downloads to your library with one click.

Jellyfin Integration

Auto library scan, thumbnail artwork, and deep-link search. Your downloads flow seamlessly into your Jellyfin media server.

Subscriptions

Monitor channels and playlists. Auto-download new content on a schedule. Backfill by date or download entire channels.

Livestream Monitors

Watch livestreams and auto-download when they go live. Never miss a stream from your favorite creators.

Real-Time Progress

Live download status via Server-Sent Events. See speed, ETA, and progress percentage update in real time.

OIDC Authentication

OpenID Connect SSO with admin and user roles. Secure multi-user access with your existing identity provider.

Mobile-Friendly

Responsive design with Web Share API support on iOS for save-to-photos. Full functionality on any device.

Quick Start

Get running in minutes with Docker Compose or Helm.

Docker Compose

# Copy .env.example to .env and fill in your values
cp .env.example .env

# Start the stack
docker compose up -d

Helm

# Install with Helm
helm install wytui \
  oci://ghcr.io/willuhmjs/wytui

# Or with custom values
helm install wytui \
  oci://ghcr.io/willuhmjs/wytui \
  -f values.yaml