ytdlp-tui
v1.0.1
Published
A terminal YouTube downloader with a clean TUI — pick your format, pick your quality, paste a URL and watch it download. No browser, no GUI, no fuss.
Readme
ytdl-tui
A terminal YouTube downloader with a clean TUI — pick your format, pick your quality, paste a URL and watch it download. No browser, no GUI, no fuss.
Built with Bun, TypeScript, and OpenTUI.
Features
- Download video (MP4) or audio only (MP3)
- Quality selection — Best, 1080p, 720p, 480p
- Live progress bar with speed and ETA
- Keyboard-driven UI, no mouse needed
- Downloads saved to
~/Downloads/ytv/
Requirements
yt-dlp must be installed on your system:
# macOS
brew install yt-dlp
# Linux
sudo apt install yt-dlp
# or
pip install yt-dlp
# Windows
winget install yt-dlpBun runtime:
curl -fsSL https://bun.sh/install | bashInstall
bunx ytdl-tuiOr install globally:
bun install -g ytdl-tui
ytdl-tuiUsage
┌──────────────────────────────────────────┐
│ URL input │
├─────────────────┬────────────────────────┤
│ Mode │ Quality │
├─────────────────┴────────────────────────┤
│ Progress / Result │
├──────────────────────────────────────────┤
│ Hints │
└──────────────────────────────────────────┘- Paste a YouTube URL into the URL field
- Press
Enterto move to Mode selection - Pick
Video + AudioorAudio Onlywith arrow keys - If video, press
EnterorTabto move to Quality - Press
Enteron your chosen quality to start the download - File saves to
~/Downloads/ytv/
Keyboard shortcuts:
| Key | Action |
| ----------- | ------------------- |
| Tab | Move focus forward |
| Shift+Tab | Move focus backward |
| ↑ / ↓ | Navigate options |
| Enter | Confirm / download |
| Ctrl+C | Quit |
Tech Stack
- Bun — runtime and package manager
- TypeScript — language
- OpenTUI — terminal UI framework
- yt-dlp — download engine
License
MIT
