ytdl-go¶
A YouTube downloader written in Go with a terminal UI and web interface.
Features¶
| Core Capabilities | Advanced Tools |
|---|---|
| High Performance — Parallel downloads, automatic retries, and resume capability. | Interactive TUI — Visual format selector to browse and pick specific quality streams. |
| Broad Support — Download videos, audio, playlists, and YouTube Music URLs. | Rich Metadata — Embeds ID3 tags, fetches structured JSON metadata, and handles sidecars. |
Format Control — Select by quality (1080p, best), container (mp4), or exact itag. |
Automation Ready — JSON output mode, custom output templates, and quiet modes for scripts. |
Quick Start¶
# Install
go install github.com/lvcoi/ytdl-go@latest
# Download a video
ytdl-go https://www.youtube.com/watch?v=BaW_jenozKc
# Download audio only
ytdl-go -audio https://www.youtube.com/watch?v=BaW_jenozKc
# Launch the web UI
ytdl-go -web
See the Installation and Quick Start guides for details.
Documentation Sections¶
- User Guide — Installation, usage, output templates, troubleshooting.
- Developer Guide — Architecture, API reference, contributing.
- Reference — CLI flags, roadmap, security policy.