// readme

better-douyin-R

更轻、更快的 Rust / Tauri 版抖音桌面工具。面向日常使用,覆盖搜索、解析、批量下载、推荐流预览、本地播放与下载管理。

下载安装 · 界面预览 · 首次使用 · 加入交流群


核心亮点

  • 搜索抖音用户,查看主页、作品、收藏、点赞等内容
  • 粘贴分享链接解析单条作品,并支持直接下载
  • 批量下载视频、图集和部分 Live Photo 内容
  • 推荐流沉浸式预览,支持滚轮切换与一键下载
  • 本地播放器支持进度拖动、失败重试和清晰加载状态
  • 私信历史、头像预览与本地媒体代理持续增强
  • “我的下载”支持文件/作品两种视图,搜索、播放、定位、删除一站完成
  • Cookie、配置、下载历史与文件均保存在本机

想看 Python 源码或做二次开发,可使用 better-douyin

界面预览


首页 / 主界面


搜索用户


用户主页 / 批量下载


推荐视频流


沉浸式播放器

下载安装

Releases 下载对应平台安装包。

平台推荐文件
Windows*_x64-setup.exe*_x64_portable.zip
macOS Apple Silicon*_aarch64.dmg*_macos-arm64_portable.zip
macOS Intel*_x64.dmg*_macos-x64_portable.zip
Linux Debian/Ubuntu*_amd64.deb
Linux Fedora/openSUSE/RHEL*.x86_64.rpm
Linux 通用*_amd64.AppImage

.siglatest.jsonwindows.jsondarwin.jsonlinux.json

The Undervalued Score +

How much a project earns versus how much attention it actually gets. Above 50 means the work is outrunning its audience. Recomputed nightly from commit velocity, contributor effort, issue resolution, fork utility, release cadence, and project maturity — divided by a logarithmic reach factor.

score  = signal / reach

signal = 0.25·commit_velocity   // commits in last 90 days (cap 30)
       + 0.20·contributor_work  // unique authors × velocity (cap 100)
       + 0.20·issue_resolution  // closed ÷ total issues
       + 0.20·fork_ratio        // forks ÷ stars (proxy for real usage)
       + 0.10·release_cadence   // releases in 90 days (cap 3)
       + age_bonus              // +0 to +0.30 after 6 months
       + homepage_bonus         // +0.05 if homepage is set

reach  = log₁₀(stars + watchers + 10)
The Health Score +

Is the project alive and maintained right now? A 0–100 pulse recomputed nightly from commit recency, rhythm, how fast issues close, and how quickly PRs get merged.

health = 0.35·recency       // days since last commit (90d decay)
       + 0.25·cadence       // commit rhythm consistency
       + 0.20·issue_health  // closed ÷ total issues
       + 0.20·pr_health     // merged ÷ total PRs
Health bands +

The colour and label on every card come straight from the health score.

Healthy   80 – 100   active, responsive, regular releases
Stable    60 – 79    maintained, steady, no alarms
Quiet     40 – 59    slowing down — watch this one
At Risk    0 – 39    going dark · candidate for rescue
// Tags — what each label means +

Tags are independent behavioral signals computed nightly. A project can hold multiple at once. They drive the home page sections.

solo_builder      one person holds > 80% of commits (last 180d)
needs_contributors has open "help wanted" or "good first issue" labels
hidden_gem        < 100 stars · active in last 3 months · documented
legacy_hero       repo > 5 years old · committed this year
fork_magnet       forks/stars > 0.5 · used as template or dependency
release_machine   5+ releases in the last 90 days
under_pressure    > 10 open issues · ≤ 2 contributors · health ≥ 60
community_watch   watchers > stars · devs tracking before the public
community_hub     GitHub Discussions enabled · > 20 discussions
funded            maintainer has active funding channel
Why rank against stars at all? +

Stars are an outcome, not effort. A project with 8 stars and daily commits is doing more interesting work than one coasting on 8k. We measure the building, then divide by the attention already received — so the genuinely undervalued rise to the top.

// stars   = lagging indicator
// commits = leading indicator
// we rank by the leading one