MyTube 是一款开源的视频下载与本地播放管理应用,面向视频收藏爱好者与 NAS 用户。基于 yt-dlp 的广泛兼容能力,可从
YouTube、Bilibili
等平台获取视频;支持将缩略图与元数据本地保存,按收藏夹归档,配套自定义播放器带来顺畅的离线观看体验。提供完整源码,便于快速评估与自建。
适用人群与场景
- 视频收藏与归档:将分散在各平台的内容集中保存到本地库,统一管理与检索。
- NAS 与离线播放:在家庭或团队内搭建私有库,低带宽环境仍可流畅观看。
- 创作者工作流:素材采集、分集管理、评分与标签标注,提升整理效率。
- 多语言与跨终端:桌面与移动端皆可使用,界面对暗色主题友好。
下载与管理
- 视频下载:输入 URL 即可下载,支持 YouTube、Bilibili 与 yt-dlp 兼容源(微博/小红书/x.com 等实际可用性依平台策略而定)。
- 并行与队列:可同时追踪多个任务进度,并设置并发上限,平衡带宽与速度。
- Bilibili 增强:支持单视频、多 P、合集/系列整包下载。
- 本地库与缩略图:自动保存封面与元数据,浏览体验更直观。
- 分页与搜索:支持大规模视频分页浏览,提供本地检索与在线搜索入口。
- 收藏夹与视图切换:自定义收藏夹,首页在“收藏夹视图/视频视图”间切换。
- 评分系统:5 星打分,标注优先级与观看价值。
- 临时文件清理:在设置中一键清理临时下载文件,节省空间。
播放与体验
- 定制播放器:播放/暂停、循环、快进/快退、全屏、调光等常用控制。
- 现代化 UI:响应式界面,玻璃拟态视觉,支持明/暗主题平滑切换。
- 移动端优化:更友好的标签菜单与小屏布局。
- 登录保护:密码登录页保护私有实例。
- 国际化 I18N:内置英语、中文、西语、法语、德语、日语、韩语、阿拉伯语、葡语等。
部署与快速开始
环境要求
- Node.js ≥ v14
- npm ≥ v6
- Docker(可选,用于容器化部署)
安装步骤(示例)
# 克隆仓库ngit clone <repository-url>ncd mytubenn# 一键安装前后端依赖nnpm run install:alln# 或分别安装nnpm installncd frontend && npm installncd ../backend && npm installn启动与常用脚本
# 开发模式(前后端联动)nnpm run devnn# 生产模式启动nnpm run startnn# 构建前端nnpm run buildnn# 代码检查与修复(前端)nnpm run lintnnpm run lint:fixn访问地址
- 前端:http://localhost:5556
- 后端 API:http://localhost:5551

GitHub开源地址: https://github.com/franklioxygen/MyTube
体验地址: https://mytube-demo.vercel.app/
