xytz is a terminal frontend for yt-dlp, written in Go using Bubble Tea. It brings content discovery, format selection, and download management into an interactive interface, while accepting direct URLs from other sites supported by its download engine.
The application uses ffmpeg for media processing. Optional playback uses mpv, with ffplay available as a fallback, so selected content can be watched without first completing a download.
This is free and open source software.
Key Features
- Search YouTube videos and channels, with configurable result limits and sorting.
- Browse a channel by its username or open a playlist by its identifier.
- Choose video and audio formats using displayed quality information.
- Select several videos for batch downloading and resume unfinished downloads.
- Save videos to a watch-later list.
- Display inline thumbnail previews using supported terminal image protocols, with a character-based fallback.
- Keep persistent search history for returning to earlier queries.
- Load authentication cookies from a browser or an exported cookie file.
- Configure output directories, preferred quality, audio and video formats, and metadata embedding.
- Optionally embed subtitles, chapters, and thumbnails in downloaded media.
- Process Spotify track and album links, including multi-disc albums, metadata tags, cover artwork, and optional lyric files.
- Change themes while running and customise settings through a YAML configuration file.
- Cross-platform support – runs on Linux, macOS, and Windows.
Website: github.com/xdagiz/xytz
Support:
Developer: Dagmawi Ali
License: MIT License

xytz is written in Go. Learn Go with our recommended free books and free tutorials.
Related Software
| Console-Based YouTube Tools | |
|---|---|
| yt-dlp | Fork of youtube-dl offering new features |
| You-Get | Downloader that scrapes the web |
| Lux | Download library and CLI tool |
| yewtube | Terminal based YouTube player and downloader |
| YouTube TUI | Lightweight and user friendly TUI for browsing YouTube |
| Tizonia | Cloud music player for the Linux terminal |
| ytdl-sub | Automates media downloads and generates accompanying metadata |
| pipe-viewer | Lightweight YouTube client with CLI and GUI |
| yt-x | Browse YouTube from the terminal |
| pytubefix | Library and CLI for downloading YouTube videos |
| ytsurf | Clean and distraction-free |
| YTerMusic | Aims to be as fast and simple as possible |
| xytz | TUI frontend for yt-dlp |
| ytm-player | Terminal-based client for YouTube Music |
| tuitube | TUI to download videos |
| GopherTube | Terminal YouTube client for searching and watching videos |
| youtube-dl | Download videos from YouTube and many other sites. Extremely versatile |
| ytcc | Keep track of your favorite playlists on YouTube |
| ytm | Play and browse YouTube Music directly from your terminal |
| Rataplay | TUI to search, play and download videos |
| gytm | Terminal-based player for searching and streaming YouTube Music |
| GoMusic | Download and stream music from YouTube |
Read our verdict in the software roundup.
LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more. Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion. Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README. |


Please read our Comment Policy before commenting.