downvid README

The project's README from github.com/Downvid/downvid. As one markdown file: README.md.

DownVid Logo

DownVid

Save the videos you like, locally.

Open source · Cross-platform · Simple

DownVid desktop app preview

Downloads Latest Release GitHub Stars AlternativeTo CI Linux CI macOS CI Windows CodeQL MIT License

Website · Download · Report an issue · Installation guide

简体中文 | English


[!IMPORTANT] This project is a graphical front end for yt-dlp. It contains no code for cracking or circumventing technical protection measures. Please follow your local laws, platform terms and copyright requirements; you are responsible for how you use it.

Contents

About

DownVid is a modern, high-performance, open-source desktop video downloader for macOS, Windows, and Linux.

Built as a graphical frontend for yt-dlp and FFmpeg, it removes the complexity of command-line tools and provides a clean, native, and ad-free experience.

Why DownVid?

The project is under active development. If you hit a problem or have a suggestion, please open an issue.

Features

Feature Description
Wide site support 1000+ video and audio sites via yt-dlp; Douyin and Kuaishou have dedicated parsers
Quality and formats 360P through 4K, audio-only (MP3), subtitles-only (SRT), YouTube multi-audio-track selection
Download management Queue, pause, resume, retry, live progress with speed, ETA and file size
Download acceleration Direct links use a small-chunk worker queue (8 by default, up to 16); optional aria2 multi-connection; concurrent HLS/DASH fragments
Logged-in content Reads cookies from installed browsers, or import a cookies.txt manually
Runtime dependencies Detects yt-dlp / FFmpeg already on your machine; downloads them in-app if missing
Download history Keeps the last 100 downloads
Auto update Updates through GitHub Releases; macOS verifies and swaps the app bundle in place

Supported sites

DownVid supports 1000+ video and audio sites through yt-dlp. A few common ones:

China International
Douyin, Xiaohongshu, Kuaishou, Xigua, Bilibili YouTube, TikTok, Instagram, X (Twitter), Facebook

For everything else see the yt-dlp supported sites list. Availability can change as sites change.

Install

Download the latest build from GitHub Releases and pick the package for your OS.

Platform Package
macOS .dmg (ARM64 / x64)
Windows .exe (x64)
Linux .AppImage / .deb (x64 / ARM64; check the Release page for the exact artifacts)

Step-by-step instructions and common issues are in the installation guide.

Build from source

Requirements

yt-dlp and FFmpeg do not need to be installed beforehand. At runtime DownVid detects and reuses whatever is already on your machine, and can download them in-app when missing.

Steps

git clone https://github.com/yxxbc/downvid.git
cd downvid
pnpm install
pnpm dev       # development
pnpm build     # package for the current platform

Per-platform build commands, dependency notes and troubleshooting are in the build from source guide.

Documentation

Document Contents
Installation Install instructions for macOS, Windows and Linux
Build from source Development environment, dependencies and build flow
Troubleshooting Common errors and how to diagnose them
FAQ Usage questions and answers
Architecture Process structure, IPC and download flow
Project structure Directory guide and where to make changes
Repository standards Branch, commit, issue and PR conventions
Release process Versioning and release artifact maintenance
Contributing How to contribute
Security policy How to report security issues
Code of conduct Community expectations

The in-depth docs are currently written in Chinese. Contributions that translate them are very welcome.

Tech stack and architecture

Tech stack

Technology Purpose
Electron Cross-platform desktop shell
Vue 3 User interface
TypeScript Type safety
Tailwind CSS Styling
Vite Development and build
Pinia State management
Go Dependency sidecar that detects and installs yt-dlp / FFmpeg
yt-dlp Video and audio extraction engine
FFmpeg Merging and transcoding
Vitest Pure-logic unit tests

Architecture overview

flowchart LR
    UI["Renderer<br/>Vue 3"] <-->|"IPC"| Main["Main process<br/>Electron / Node.js"]
    Main <-->|"NDJSON"| Sidecar["Go dependency sidecar"]
    Main --> Engine["yt-dlp"]
    Main --> Media["FFmpeg"]

An interactive diagram with more detail is in the architecture doc.

Project layout

Directory Purpose
backend/ Go dependency sidecar: detects and installs runtime dependencies
electron/ Main process, IPC, download implementations, site parsers, updater
src/ Vue 3 renderer and UI
shared/ Repository coordinates and shared external links
tests/ Automated unit tests
scripts/ Build, manifest generation and validation scripts
docs/ Installation, build, architecture, maintenance and release docs

See the project structure doc for the full tree.

FAQ

It says yt-dlp or FFmpeg is missing. What now?

The installer does not bundle them. DownVid looks for a usable copy already on your system at startup; if it cannot find one, you can download it from the prompt, or manage it later under Settings → Runtime dependencies.

macOS says the developer cannot be verified. What now?

The first time you open it, right-click the app in Finder and choose Open, or allow it under System Settings → Privacy & Security. If it still fails, see the troubleshooting guide.

Some videos fail to download. What now?

Many sites require you to be signed in. Make sure you are allowed to access the content, then let DownVid read your browser session or import a cookies.txt. Site changes can also affect extraction success.

More in the FAQ and troubleshooting guide.

Contributing

Issues, documentation improvements and pull requests are all welcome.

Before submitting, please run:

pnpm vue-tsc --noEmit
pnpm test
pnpm lint:ipc

See the contributing guide and repository standards for the rest.

Contributors

Thanks to everyone who has contributed to DownVid:

Contributors

Star history

Star History Chart

License and credits

DownVid is released under the MIT License.

DownVid started from Videdown and has since been substantially modified, refactored and extended. Thanks to cshuangyy for the original work; the original copyright and license notice is preserved in LICENSE.

Thanks also to the community contributors and to the maintainers of the projects we depend on:

Supporting the project

If DownVid is useful to you, you can buy the author a coffee. WeChat tip code:

Show tip code WeChat tip code

DownVid · Made with care by yxxbc

downvid (Downvid/downvid)

Searching Database…

这是什么?DownVid 是一款现代的跨平台开源桌面应用,可以从 YouTube、Bilibili、抖音、TikTok 等 1000 多个网站下载视频和音频,没有水印也没有广告。
它是一个独立的下载工具,还是只是 yt-dlp 的图形界面外壳?它是一个 Electron 桌面图形界面,封装了 yt-dlp 和 FFmpeg,让你用上一个干净的原生应用,而不必直接敲命令行。
我需要先装好 yt-dlp 和 FFmpeg 吗?不需要。DownVid 会自动检测你系统里已有的版本,也可以在应用内自行下载并管理独立的一套 yt-dlp 和 FFmpeg。
视频下载是不是每次都能成功?不是。很多网站要求登录,所以你可能需要让 DownVid 读取浏览器的 Cookie,或者导入 cookies.txt 文件;另外网站一旦改版,解析就可能失效。
它有广告或者跟踪吗?没有。它不捆绑任何第三方垃圾软件,没有后台数据收集,也不强制添加水印,并且是完全开源的,采用 MIT 许可证。
它支持多线程并行下载吗?支持。直接下载采用多线程分块任务队列(默认最多 16 线程),还可以选用 aria2 进行多连接传输,并支持 HLS/DASH 分片的并发下载。
它具体支持哪些国内平台?抖音、小红书、快手、西瓜视频和 Bilibili 都有专门的内置解析器,此外通过 yt-dlp 还支持 YouTube、TikTok、Instagram、Facebook 和 X 等 1000 多个国际网站。
这是一个全新的项目,还是基于其他项目改的?DownVid 起源于 Videdown 项目,此后由现任维护者和贡献者做了大量的修改、重构和功能扩展。
它会记录我下载过的内容吗?会,它会保存最近 100 条下载记录,并支持排队、暂停、继续和重试。
Creator
Downvid
Size
70.7 MB
Stars
1K
Age
1mo
Commits · 90 Days