yoinks
命令行 · 视频下载 · yt-dlp
终端里的视频下载器:粘贴链接、选分辨率或 mp3 就完事,支持 1800 多个站点,UI 是 React 写的终端界面。
正在打开工具详情…
Stremio 官方网页版媒体中心:addon 驱动的影视目录、跨设备同步、Chromecast 投屏、可装成 PWA。
想要一个不装客户端、开浏览器就能用、能投屏、能装成 PWA,并且愿意自己配置 addon 生态的媒体中心用户。
期待「装完就有影视库」的人——它不提供内容,内容来自你配置的 addon;或者不想注册账号的人——同步功能需要 Stremio 账号。
Stremio Web 是 Stremio 的官方网页版界面,一个现代媒体中心——它的定位是「视频娱乐的一站式方案」。直接打开 https://web.stremio.com 就能用,不需要安装桌面客户端。
它的核心机制是 addon(插件)驱动的。 电影、剧集、频道的目录来自 addon 提供的目录数据,而不是内置数据库。这决定了 Stremio 和传统媒体库应用的根本差别:内容来源是可替换的,装什么 addon 就有什么内容。字幕也走 addon,或者用本地的,并且样式可自定义。
实用功能上:库(Library)和「继续观看」跟着 Stremio 账号跨设备同步;支持 Chromecast 投到电视;播放器是键盘优先的,不放鼠标也能控制全部播放;50 多种语言,由社区通过 stremio-translations 翻译;可作为独立 PWA 安装(装完有自己的图标,不走浏览器标签页)。
架构上它是一个「React 外壳 + Rust 内核」的组合,这一点值得单独说,因为它不是纯前端项目:界面是 React(本仓库);真正干活的是 stremio-core——Stremio 的 Rust 引擎,编译成 WebAssembly 跑在 Web Worker 里;播放走 stremio-video,它会按当前环境挑选合适的播放器实现。
一句话概括分工:UI 渲染状态,core 计算状态。 所以它的性能特征更接近原生应用而不是网页。
生态是它最强的部分,围绕它有一整套仓库:stremio-core(状态、addon 协议、库、同步)、stremio-video(播放器抽象)、stremio-translations(社区翻译)、stremio-addon-sdk(用 Node.js 写自己的 addon)。最后一个意味着你可以自己做一个 addon 加进任何 Stremio 客户端,包括网页版。
要提前知道的两件事:一是它需要账号——同步功能依赖 Stremio 账号,本地播放不需要;二是内容来源取决于你装的 addon,官方不提供内容,它是目录和播放器的框架。所以「装上就能看」这个预期要调整:需要自己找到合适的 addon 并配置,这是它生态的运作方式。
想自己部署一份的话也有官方 Docker 镜像。许可证是 GPL-2.0。
上手步骤之外的具体做法:常见场景怎么配、命令怎么写、报错怎么处理。
从直接打开网页版到理解它的 Rust 内核架构,再说明 addon 生态该怎么上手。
打开 web.stremio.com(在新标签页打开) 就能用,不用装任何东西。
但第一次用会看到一个空界面,这是正常的。 Stremio 不提供影视内容——它的目录数据全部来自 addon。你需要先装 addon,才会有东西可看。
这是理解 Stremio 最关键的一点。它不是一个「影视库应用」,而是一个媒体中心框架:
所以「装上就能看」这个预期要调整。找 addon、装 addon、配 addon 是使用它的一部分。
| 功能 | 说明 |
|---|---|
| Addon 驱动 | 从 addon 目录发现电影、剧集和频道 |
| 跨设备同步 | 库和「继续观看」跟着 Stremio 账号走 |
| 投屏 | 通过 Chromecast 播到大屏 |
| 字幕 | addon 提供或本地,样式可定制 |
| 键盘优先播放器 | 不碰鼠标也能控制全部播放 |
| 50+ 语言 | 社区通过 stremio-translations 翻译 |
| 可安装 | 作为独立 PWA 运行 |
装成 PWA 值得试:装完有独立图标和独立窗口,用起来更像本地应用而不是网页标签页。
这不是一个纯前端项目,搞清楚分工有助于理解它的行为:
textReact UI <--> stremio-core (Rust → WASM, Web Worker)
↕ ↕
Stremio API Addons
React UI --> stremio-video一句话:UI 渲染状态,core 计算状态。 所以它的性能特征更接近原生应用而不是网页——后台计算不阻塞界面。
需要 Stremio 账号,同步功能(库、继续观看)依赖它。本地播放不需要账号。
如果只是在一台设备上看看不同步,其实可以先不管账号——但跨设备接着看是它比较实用的一个能力,值得注册。
围绕 stremio-web 有一整套官方仓库:
| 仓库 | 是什么 |
|---|---|
| stremio-core(在新标签页打开) | Rust 引擎:状态、addon 协议、库、同步 |
| stremio-video(在新标签页打开) | 这个界面用的播放器抽象 |
| stremio-translations(在新标签页打开) | 社区翻译 |
| stremio-addon-sdk(在新标签页打开) | 用 Node.js 写自己的 addon |
最后一行是重点。 有了 SDK 你可以自己做一个 addon,加进任何 Stremio 客户端——包括这个网页版。这说明它的 addon 生态是开放的,不是封闭的官方商店。
直接用 Docker:
bashdocker build -t stremio-web .
docker run -p 8080:8080 stremio-web需要 Node.js 22+ 和 pnpm 11+:
bashpnpm install
pnpm start开发服务器跑在 http://localhost:8080。
| 命令 | 作用 |
|---|---|
pnpm start | 开发服务器,带热重载 |
pnpm run start-prod | 生产模式的开发服务器 |
pnpm run build | 生产构建 |
pnpm test | 跑测试 |
pnpm run lint | 代码检查 |
pnpm run scan-translations | 检查缺失的翻译键 |
最后一条对做汉化的人有用——它能告诉你哪些文案还没有中文。
Bug 报告和 PR 都欢迎,官方推荐从 good first issue 标签开始。想把 Stremio 翻译成你的语言,去 stremio-translations 贡献。
GPL-2.0,版权归 Smart Code OOD(2017-2026)。
同一需求下可以先试这些,尤其是不想买商业许可的时候。
命令行 · 视频下载 · yt-dlp
终端里的视频下载器:粘贴链接、选分辨率或 mp3 就完事,支持 1800 多个站点,UI 是 React 写的终端界面。