A clean terminal app for downloading YouTube videos. Paste a link, pick a format and quality, confirm done.
- Single video and playlist support (pick one video from a playlist)
- MP4, WEBM, and MP3 (audio-only) output
- Resolution choices: 1080p, 720p, 480p, 360p, or best available
- Shows the video title (not the URL) in the confirmation screen
- Rich progress bar with speed and ETA
- Saves directly to your
~/Downloadsfolder
- Python 3.10+
- FFmpeg — required for merging video/audio streams and MP3 extraction. Must be on your PATH.
pip install -r requirements.txtpython main.py- Paste a YouTube video or playlist URL
- If a playlist, pick the video you want from the list
- Choose format — MP4 (default), WEBM, or MP3
- Choose resolution — 720p default (skipped for MP3)
- Review the confirmation screen and press Enter
- Watch the download bar — file lands in
~/Downloads
Fiona is powered by yt-dlp — a feature-rich, actively maintained fork of youtube-dl.
yt-dlp is the engine behind everything: fetching metadata, resolving formats, merging streams, and handling the download itself. This project would not exist without the tremendous work of the yt-dlp contributors and maintainers.
If you find yt-dlp useful, please consider starring their repository and reading their documentation:
