Nabby vs yt-dlp-webui
Different languages, different scope, same engine.
The short version
yt-dlp-webui (marcopeocchi) is a mature Go-based frontend with job management, dashboards, and configuration. Nabby is a minimal Python/Flask paste-and-grab UI with no persistent state. Both wrap yt-dlp; the resemblance stops there.
At a glance
| Nabby | yt-dlp-webui | |
|---|---|---|
| Backend language | Python / Flask | Go |
| Resource footprint | ~60 MB RAM | Lower (Go) |
| UI framework | Vanilla HTML/CSS/JS | React / SPA |
| Job management | No | Yes (list, cancel, retry) |
| Persistent downloads | No (1-hour TTL) | Yes |
| Dark theme | Yes | Yes |
| Mobile UX | Yes, responsive | Yes, responsive |
| Docker image | Coming | Yes |
| Authentication | Hard-wall consent, no login | Optional basic-auth |
Choose yt-dlp-webui if…
- You want visible job management: queues, retry buttons, download history.
- You prefer a Go binary over a Python stack for your self-hosted services.
- You want built-in basic authentication for a protected instance.
- You're setting up a shared instance for a small group of trusted users.
Choose Nabby if…
- You want the smallest possible footprint — one Flask app, one systemd service, done.
- You deliberately don't want a dashboard, history, or jobs page cluttering the surface.
- You want no files kept on disk after download for privacy or disk-space reasons.
- You prefer vanilla HTML/CSS/JS over a React SPA.
Honest notes
yt-dlp-webui is a more complete sysadmin tool. Nabby is closer to a web-form bookmarklet. If you want to leave the tab open and queue up ten downloads overnight, use yt-dlp-webui. If you want to grab one video from a text message your friend sent and move on, Nabby is faster to use.
← back to Nabby · FAQ · About