-
-
Notifications
You must be signed in to change notification settings - Fork 242
Migrate to v4
Marco Piovanello edited this page Jul 8, 2026
·
2 revisions
Caution
Before updating to v4 it's reccomended to stop/complete all your downloads and backup all your templates and cron jobs!
yt-dlp-web-ui v4 introduces many changes to the underlying code and configuration management.
The first thing was ditch file based session storing for a streamlined approach with bolt. This ensures better performance, better migrations and a single source of thruth for all the backend state management.
The config file was also revamped, now more structured and clinger to field-drive-configuration (FDC) - supporting:
- YAML
- TOML
- ENV
---
# Sample configuration file for yt-dlp webui v4
server:
# Host where server will listen at (default: "0.0.0.0")
host: 0.0.0.0
# Port where server will listen at (default: 3033)
port: 3033
# [optional] The download queue size (default: logical cpu cores)
queue_size: 4
paths:
# [optional] Directory where downloaded files will be stored (default: ".")
download_path: ./downloads
# [optional] Full path to the yt-dlp (default: "yt-dlp")
downloader_path: /usr/bin/yt-dlp
# [optional] Path where the sqlite database will be created/opened (default: "./local.db")
local_database_path: .
logging:
# [optional] Set the path of the log file
log_path: yt-dlp-webui.log
# [optional] Enable file based logging with rotation (default: false)
enable_file_logging: true
# [optional] RPC authentication
authentication:
# enforce authentication
require_auth: false
# any username is valid
username: chetto
# bcrypt hashed password
password_hash: $2a$12$F1Vs10AaD1jXL0tTnaQXJ.oxX2Z54zjcstzzG0Pj7jdft947iQT.a
# [optional] OpenID based authentication
openid:
use_openid: false
openid_provider_url: https://...
openid_client_id: a20e0aewj0dja09duj0sa
openid_client_secret: secreta98uhcoskodjlzkks
openid_redirect_url: https://yt-dlp-webui.yourdomain.tld/auth/openid/signin
openid_email_whitelist:
- example1@example.com
- example2@example.com
# [optional] Enable Twitch stream capture and monitoring
twitch:
client_id: my_client_id
secret: my_secret
check_interval: 1m
# frontend:
# [optional] Path where a custom frontend will be loaded (instead of the embedded one)
# frontend_path: ./web/solid-frontend