优化,添加Telegram群组与赞赏区,强化Emby客户端兼容说明,新增论坛图文教程与截图,修正MetaTube文档链接
@@ -7,7 +7,7 @@
|
|||||||
<h3 align="center">面向 NAS 与家庭影音场景的私人媒体中心</h3>
|
<h3 align="center">面向 NAS 与家庭影音场景的私人媒体中心</h3>
|
||||||
|
|
||||||
<p align="center">
|
<p align="center">
|
||||||
<strong>媒体库 · 刮削整理 · 网盘 STRM · Emby 协议 · 远程 Emby 挂载 · 多用户权限 · Docker 一键部署</strong>
|
<strong>媒体库 · 刮削整理 · 网盘 STRM · 兼容 Emby/Jellyfin 客户端 · 远程 Emby 挂载 · 多用户权限 · Docker 一键部署</strong>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p align="center">
|
<p align="center">
|
||||||
@@ -17,7 +17,8 @@
|
|||||||
<a href="#鸣谢">鸣谢</a> ·
|
<a href="#鸣谢">鸣谢</a> ·
|
||||||
<a href="#开发构建">开发构建</a> ·
|
<a href="#开发构建">开发构建</a> ·
|
||||||
<a href="README_EN.md">English</a> ·
|
<a href="README_EN.md">English</a> ·
|
||||||
<a href="CONTRIBUTING.md">贡献规范</a>
|
<a href="CONTRIBUTING.md">贡献规范</a> ·
|
||||||
|
<a href="https://t.me/MeBoxGroup">Telegram 群组</a>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p align="center">
|
<p align="center">
|
||||||
@@ -46,7 +47,7 @@
|
|||||||
| **媒体库** | 电影、电视剧、动漫、综艺、音乐与自定义库;多根目录、扫库、海报墙、继续观看 |
|
| **媒体库** | 电影、电视剧、动漫、综艺、音乐与自定义库;多根目录、扫库、海报墙、继续观看 |
|
||||||
| **元数据刮削** | TMDb、Bangumi、Douban、TheTVDB、Fanart 等;支持 NFO、手动匹配、刮削队列 |
|
| **元数据刮削** | TMDb、Bangumi、Douban、TheTVDB、Fanart 等;支持 NFO、手动匹配、刮削队列 |
|
||||||
| **播放** | 网页播放器、HLS 转码、弹幕、字幕、播放配置档、观看历史与收藏 |
|
| **播放** | 网页播放器、HLS 转码、弹幕、字幕、播放配置档、观看历史与收藏 |
|
||||||
| **Emby 协议** | Infuse、SenPlayer、Fileball 等客户端可直接添加本服务,使用 MeBox 账号登录 |
|
| **Emby/Jellyfin 客户端兼容** | 内置完整 Emby 服务端协议实现:Infuse、SenPlayer、Fileball、Emby/Jellyfin 官方客户端等可直接把本服务当作 Emby 服务器添加,使用 MeBox 账号登录,海报墙、进度同步、多用户无缝衔接 |
|
||||||
| **远程 Emby 挂载** | 将远程 Emby 媒体库挂载到本地界面统一浏览(无需单独开 Emby 客户端) |
|
| **远程 Emby 挂载** | 将远程 Emby 媒体库挂载到本地界面统一浏览(无需单独开 Emby 客户端) |
|
||||||
| **网盘与 STRM** | OpenList、CloudDrive2、115、WebDAV 等;STRM 同步、上传/下载队列、直链/302 播放 |
|
| **网盘与 STRM** | OpenList、CloudDrive2、115、WebDAV 等;STRM 同步、上传/下载队列、直链/302 播放 |
|
||||||
| **下载与整理** | qBittorrent 接入、站点搜索与订阅、下载后自动整理、文件管理器(复制/移动/硬链/软链) |
|
| **下载与整理** | qBittorrent 接入、站点搜索与订阅、下载后自动整理、文件管理器(复制/移动/硬链/软链) |
|
||||||
@@ -85,6 +86,8 @@ http://服务器IP:18080
|
|||||||
|
|
||||||
默认账号:`admin` / `admin123`(首次登录后请立即修改密码)
|
默认账号:`admin` / `admin123`(首次登录后请立即修改密码)
|
||||||
|
|
||||||
|
> 💡 **Emby 用户无缝切换**:MeBox 完整兼容 Emby/Jellyfin 客户端协议。手机、电视、平板上的 Infuse、SenPlayer、Fileball、Emby/Jellyfin 官方客户端,直接按「添加 Emby 服务器」填入 `http://服务器IP:18080`,用 MeBox 账号登录即可,无需改变原有使用习惯。
|
||||||
|
|
||||||
镜像地址:
|
镜像地址:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
@@ -251,3 +254,18 @@ MeBox 在 [MediaStationGo](https://github.com/ShukeBta/MediaStationGo) 的基础
|
|||||||
## 许可证
|
## 许可证
|
||||||
|
|
||||||
本项目采用 [GPL-3.0](LICENSE) 许可证。
|
本项目采用 [GPL-3.0](LICENSE) 许可证。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 赞赏
|
||||||
|
|
||||||
|
如果 MeBox 帮你把家庭影音折腾明白了,欢迎请作者喝杯咖啡 ☕
|
||||||
|
|
||||||
|
<p align="center">
|
||||||
|
<img src="docs/images/donation-qr.png" width="320" alt="WhileTrue 的赞赏码" />
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p align="center">
|
||||||
|
<strong>Telegram 交流群</strong>:<a href="https://t.me/MeBoxGroup">https://t.me/MeBoxGroup</a><br/>
|
||||||
|
使用问题、功能建议、更新动态,欢迎来群里聊
|
||||||
|
</p>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<h3 align="center">A self-hosted media center for NAS and home theater</h3>
|
<h3 align="center">A self-hosted media center for NAS and home theater</h3>
|
||||||
|
|
||||||
<p align="center">
|
<p align="center">
|
||||||
<strong>Libraries · Metadata · Cloud STRM · Emby protocol · Remote Emby mounts · Multi-user · Docker-first</strong>
|
<strong>Libraries · Metadata · Cloud STRM · Emby/Jellyfin client compatible · Remote Emby mounts · Multi-user · Docker-first</strong>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p align="center">
|
<p align="center">
|
||||||
@@ -16,7 +16,8 @@
|
|||||||
<a href="#quick-start">Quick Start</a> ·
|
<a href="#quick-start">Quick Start</a> ·
|
||||||
<a href="#deployment-tiers">Deployment</a> ·
|
<a href="#deployment-tiers">Deployment</a> ·
|
||||||
<a href="#acknowledgements">Acknowledgements</a> ·
|
<a href="#acknowledgements">Acknowledgements</a> ·
|
||||||
<a href="#development">Development</a>
|
<a href="#development">Development</a> ·
|
||||||
|
<a href="https://t.me/MeBoxGroup">Telegram</a>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p align="center">
|
<p align="center">
|
||||||
@@ -45,7 +46,7 @@ In practice, MeBox gives you:
|
|||||||
| **Libraries** | Movies, TV, anime, variety, music, custom libraries; multi-root scanning; poster wall; continue watching |
|
| **Libraries** | Movies, TV, anime, variety, music, custom libraries; multi-root scanning; poster wall; continue watching |
|
||||||
| **Metadata** | TMDb, Bangumi, Douban, TheTVDB, Fanart, NFO import, manual matching, scrape queue |
|
| **Metadata** | TMDb, Bangumi, Douban, TheTVDB, Fanart, NFO import, manual matching, scrape queue |
|
||||||
| **Playback** | Web player, HLS transcoding, danmaku, subtitles, play profiles, history and favourites |
|
| **Playback** | Web player, HLS transcoding, danmaku, subtitles, play profiles, history and favourites |
|
||||||
| **Emby protocol** | Add MeBox in Infuse, SenPlayer, Fileball, etc. and sign in with MeBox accounts |
|
| **Emby/Jellyfin client compatible** | Full Emby server protocol implementation: Infuse, SenPlayer, Fileball, and official Emby/Jellyfin clients can add MeBox as an Emby server and sign in with MeBox accounts — poster walls, watch progress, and multi-user work out of the box |
|
||||||
| **Remote Emby mounts** | Browse remote Emby libraries inside MeBox without a separate Emby client |
|
| **Remote Emby mounts** | Browse remote Emby libraries inside MeBox without a separate Emby client |
|
||||||
| **Cloud & STRM** | OpenList, CloudDrive2, 115, WebDAV; STRM sync; upload/download queues; direct or 302 playback |
|
| **Cloud & STRM** | OpenList, CloudDrive2, 115, WebDAV; STRM sync; upload/download queues; direct or 302 playback |
|
||||||
| **Downloads & organize** | qBittorrent, site search/subscriptions, post-download organization, file manager |
|
| **Downloads & organize** | qBittorrent, site search/subscriptions, post-download organization, file manager |
|
||||||
@@ -84,6 +85,8 @@ http://SERVER_IP:18080
|
|||||||
|
|
||||||
Default login: `admin` / `admin123` — change the password immediately.
|
Default login: `admin` / `admin123` — change the password immediately.
|
||||||
|
|
||||||
|
> 💡 **Seamless for Emby users**: MeBox fully implements the Emby/Jellyfin client protocol. Infuse, SenPlayer, Fileball, and official Emby/Jellyfin apps on phones, TVs, and tablets can add it as an Emby server at `http://SERVER_IP:18080` and sign in with MeBox accounts — no change to your existing workflow.
|
||||||
|
|
||||||
Image:
|
Image:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
@@ -227,3 +230,18 @@ See [CONTRIBUTING.md](CONTRIBUTING.md) and [SECURITY.md](SECURITY.md) before ope
|
|||||||
## License
|
## License
|
||||||
|
|
||||||
This project is licensed under [GPL-3.0](LICENSE).
|
This project is licensed under [GPL-3.0](LICENSE).
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Support & Donate
|
||||||
|
|
||||||
|
If MeBox makes your home theater life easier, feel free to buy the maintainer a coffee ☕
|
||||||
|
|
||||||
|
<p align="center">
|
||||||
|
<img src="docs/images/donation-qr.png" width="320" alt="WhileTrue donation QR" />
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p align="center">
|
||||||
|
<strong>Telegram group</strong>: <a href="https://t.me/MeBoxGroup">https://t.me/MeBoxGroup</a><br/>
|
||||||
|
Questions, feature requests, and release news — come chat with us
|
||||||
|
</p>
|
||||||
|
|||||||
@@ -0,0 +1,190 @@
|
|||||||
|
# 【开源推荐】MeBox:把 NAS / 网盘 / 远程 Emby 统一家里的观影入口,Docker 一键部署
|
||||||
|
|
||||||
|
> 配图位于 `docs/tutorial-screenshots/`,发帖时按文中标注的文件名上传即可。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 写在前面
|
||||||
|
|
||||||
|
给论坛的朋友们推荐一个我维护的开源项目 —— **MeBox**,一个面向 NAS 与家庭影音场景的**自托管私人媒体中心**(GPL-3.0,Go + React)。
|
||||||
|
|
||||||
|
GitHub:https://github.com/truewhile/MeBox
|
||||||
|
|
||||||
|
一句话介绍:**部署一个服务,同时获得媒体库后台、网盘 STRM 整理、Emby 客户端协议网关三件套。** 内置完整 Emby/Jellyfin 服务端协议实现——手机、电视、平板上的 Infuse、SenPlayer、Fileball、Emby/Jellyfin 官方客户端直接「添加 Emby 服务器」就能连,一套账号体系全搞定,Emby 老用户零学习成本。
|
||||||
|
|
||||||
|
项目 fork 自 MediaStationGo 并持续二开,围绕网盘播放、任务队列、远程挂载和权限体系做了大量增强。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 它能解决什么问题?
|
||||||
|
|
||||||
|
家里看电影电视的痛点,MeBox 基本一把梭:
|
||||||
|
|
||||||
|
| 痛点 | MeBox 的解法 |
|
||||||
|
| --- | --- |
|
||||||
|
| 硬盘散落各处,海报墙乱七八糟 | 多根目录媒体库 + TMDb/Bangumi/Douban 自动刮削,海报墙、继续观看、多季剧集一应俱全 |
|
||||||
|
| 网盘资源看一部下一部太麻烦 | OpenList / CloudDrive2 / 115 / WebDAV 接入,STRM 同步 + 直链/302 播放,不占本地空间 |
|
||||||
|
| 已经有一台 Emby,出门还得开 App | **远程 Emby 挂载**:把远程 Emby 的媒体库直接挂进 MeBox 界面统一浏览 |
|
||||||
|
| 家人乱动设置、小孩看不该看的 | 多用户 + 有效期 + 成人内容开关 + 播放配置 PIN,细粒度权限 |
|
||||||
|
| 每个设备装一套专属 App 太折腾 | **完整兼容 Emby/Jellyfin 客户端**:Infuse、SenPlayer、Fileball、官方客户端按「添加 Emby 服务器」填地址 + MeBox 账号即可,海报墙、观看进度、多用户直接同步 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 特点一览
|
||||||
|
|
||||||
|
**1. 现代化 Web UI,海报墙开箱即用**
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
深色系登录页,默认账号 `admin / admin123`(首次登录请立即改密)。
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
首页自带焦点推荐轮播 + 媒体库入口卡片,继续观看、最近添加直接呈现。
|
||||||
|
|
||||||
|
**2. 媒体库与刮削**
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
20 个媒体库、1600+ 条目一眼尽收:每库自带封面拼贴、条目数统计,支持「全库修复+重刮」「刮削队列」批量处理。
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
库内海报墙带评分、集数角标,支持按最后集添加日期排序,点开即看。
|
||||||
|
|
||||||
|
**3. 详情页与多季管理**
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
剧情简介、类型标签、多季分集(特别篇/第 1-N 季)、每集缩略图与时长;一键立即播放、调用外部播放器、加入收藏。
|
||||||
|
|
||||||
|
**4. Emby/Jellyfin 客户端无缝兼容**
|
||||||
|
|
||||||
|
这是我最想强调的一点:**MeBox 内置了完整的 Emby 服务端协议实现**。手机、电视、平板上的 Infuse、SenPlayer、Fileball,甚至 Emby/Jellyfin 官方客户端,都不需要任何插件或改造——按「添加 Emby 服务器」填入 `http://服务器IP:18080`,用 MeBox 账号登录,海报墙、观看进度、收藏、多用户权限全部无缝衔接。已经习惯 Emby 生态的朋友可以零成本迁移,家人只用电视端 App 也完全无感。
|
||||||
|
|
||||||
|
**5. 网页播放器 + 弹幕自动匹配**
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
内置网页播放器支持 HLS 转码、字幕、播放配置档;**弹幕按剧名自动匹配全季分集**(截图中自动匹配到《一拳超人》39 集),屏幕占比/透明度/字号随意调,追新番体验直接拉满。
|
||||||
|
|
||||||
|
**6. 网盘 STRM:网盘当本地盘用**
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
添加网盘账号(**115 支持二维码扫码登录**)→ 添加同步目录 → 系统把网盘/本地目录里的视频生成 `.strm` 文件,元数据经下载/上传队列双向同步,播放走直链/302 不落盘。
|
||||||
|
|
||||||
|
**7. 远程 Emby 挂载(特色功能)**
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
已有远程 Emby 服务器?填一次账号,按需勾选要挂载的媒体库(支持同服务器多线路自动切换、直连开关、排序),远程库直接出现在 MeBox 首页,不必再开 Emby 客户端。
|
||||||
|
|
||||||
|
**8. 任务队列统一管理**
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
刮削 / 下载 / 上传三类任务统一看板,排队中、进行中、已匹配、失败分类计数,支持搜索与批量清理。
|
||||||
|
|
||||||
|
**9. 下载与自动整理**
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
接入 qBittorrent,下载目录定时自动整理入媒体库:智能分类子库、自动注册目的地媒体库、复制/移动/硬链/软链多种整理方式,命名规则可配。
|
||||||
|
|
||||||
|
**10. 多用户与权限**
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
管理员/普通用户分级、单实例用户数上限、账号有效期、成人内容开关、播放配置 PIN——给家人开号放心给。
|
||||||
|
|
||||||
|
**11. 运维省心**
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
FFmpeg/FFprobe 一键下载安装、转码与硬件加速开关、TMDb 语言、识别词、弹幕、Adult/NSFW 开关全在设置页分组管理;另有 DLNA 投屏、存储统计、海报墙聚合视图:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 使用教程:从零到海报墙只要 5 步
|
||||||
|
|
||||||
|
### 第 1 步:Docker 一键部署
|
||||||
|
|
||||||
|
推荐 Docker Compose(仓库提供 4 份互相独立的完整模板,无需 `.env`):
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mkdir -p MeBox && cd MeBox
|
||||||
|
|
||||||
|
# 最省心:单镜像 + 内置 SQLite
|
||||||
|
curl -fsSL https://raw.githubusercontent.com/truewhile/MeBox/main/docker-compose.simple.yml -o docker-compose.yml
|
||||||
|
|
||||||
|
# 多用户/大数据量可选 PostgreSQL 档、Redis 档、OpenSearch 档,见仓库 README「部署档位」
|
||||||
|
|
||||||
|
docker compose up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
浏览器访问 `http://服务器IP:18080`,镜像:`ghcr.io/truewhile/mebox:latest`(amd64 / arm64 都有,也提供 Windows/Linux/macOS 单文件可执行程序,不想装 Docker 直接下载跑)。
|
||||||
|
|
||||||
|
### 第 2 步:登录并修改密码
|
||||||
|
|
||||||
|
默认账号 `admin / admin123`,登录后右上角头像 → 个人资料修改密码。
|
||||||
|
|
||||||
|
### 第 3 步:创建媒体库 + 扫库
|
||||||
|
|
||||||
|
后台 → 媒体库 → 管理媒体库,添加本地路径(Docker 部署记得填**容器内**路径,如 `/media/电影`,`volumes` 左侧挂宿主机真实目录)→ 执行扫库。
|
||||||
|
|
||||||
|
### 第 4 步:配置元数据刮削
|
||||||
|
|
||||||
|
系统设置 → 外部 API,填入 TMDb / Bangumi / Douban 等 API Key;媒体库页可对单个库「全库修复+重刮」,刮削进度在任务队列实时可见。
|
||||||
|
|
||||||
|
### 第 5 步(可选但强烈推荐):
|
||||||
|
|
||||||
|
- **网盘用户**:STRM 管理 → 添加网盘账号(115 可扫码)→ 添加同步目录 → 生成 STRM 后直链播放;
|
||||||
|
- **已有 Emby**:Emby 挂载 → 添加 Emby 账号 → 勾选要挂载的媒体库;
|
||||||
|
- **第三方播放器(Emby 客户端全兼容)**:Infuse / SenPlayer / Fileball / Emby、Jellyfin 官方客户端,按「添加 Emby 服务器」填 `http://服务器IP:18080`,用 MeBox 账号登录即可,原有使用习惯完全不变;
|
||||||
|
- **下载党**:设置里接入 qBittorrent,配置下载目录自动整理,下完即入库。
|
||||||
|
|
||||||
|
### 路径映射小抄(Docker 最常见坑)
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
volumes:
|
||||||
|
- /vol1/1000/Media:/media # 左:宿主机真实路径;右:容器内路径(网页里填这个)
|
||||||
|
environment:
|
||||||
|
MEBOX_MEDIA_DIR: /vol1/1000/Media
|
||||||
|
MEBOX_MEDIA_CONTAINER_DIR: /media
|
||||||
|
```
|
||||||
|
|
||||||
|
硬链接要求同一文件系统/子卷,跨盘请改复制或软链。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 部署档位怎么选?
|
||||||
|
|
||||||
|
| 档位 | 文件 | 组件 | 适合 |
|
||||||
|
| --- | --- | --- | --- |
|
||||||
|
| 极简 | `docker-compose.simple.yml` | 单镜像 + SQLite | 个人使用、低配设备 |
|
||||||
|
| 标准 | `docker-compose.yml` | + PostgreSQL | 多用户家庭共享 |
|
||||||
|
| 增强 | `docker-compose.standard.yml` | + Redis | 大媒体库高频访问 |
|
||||||
|
| 搜索 | `docker-compose.search.yml` | + OpenSearch | 超大库全文搜索 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 技术栈与致谢
|
||||||
|
|
||||||
|
- 后端:Go · Gin · GORM · SQLite/PostgreSQL · 可选 Redis / OpenSearch
|
||||||
|
- 前端:React 18 · Vite · TypeScript · Tailwind CSS · Zustand
|
||||||
|
- 部署:Docker Compose 多档模板,amd64/arm64 镜像 + 单文件可执行
|
||||||
|
|
||||||
|
感谢上游 [MediaStationGo](https://github.com/ShukeBta/MediaStationGo) 的奠基,网盘同步/STRM/整理部分参考了 [qmediasync](https://github.com/qicfan/qmediasync) 的思路。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 链接
|
||||||
|
|
||||||
|
- GitHub:https://github.com/truewhile/MeBox
|
||||||
|
- Issue / PR:欢迎提 bug(附部署方式+复现步骤+日志)与功能建议
|
||||||
|
- License:GPL-3.0
|
||||||
|
|
||||||
|
觉得有用的话求个 Star ⭐,也欢迎论坛里的朋友反馈使用体验,我长期维护。
|
||||||
|
After Width: | Height: | Size: 278 KiB |
|
After Width: | Height: | Size: 620 KiB |
|
After Width: | Height: | Size: 743 KiB |
|
After Width: | Height: | Size: 793 KiB |
|
After Width: | Height: | Size: 1.1 MiB |
|
After Width: | Height: | Size: 612 KiB |
|
After Width: | Height: | Size: 85 KiB |
|
After Width: | Height: | Size: 247 KiB |
|
After Width: | Height: | Size: 376 KiB |
|
After Width: | Height: | Size: 285 KiB |
|
After Width: | Height: | Size: 319 KiB |
|
After Width: | Height: | Size: 306 KiB |
|
After Width: | Height: | Size: 265 KiB |
|
After Width: | Height: | Size: 1.1 MiB |
@@ -425,7 +425,7 @@ export function AdultSettingsPanel() {
|
|||||||
<span className="text-sm font-semibold text-ink-600">MetaTube 后端配置</span>
|
<span className="text-sm font-semibold text-ink-600">MetaTube 后端配置</span>
|
||||||
</div>
|
</div>
|
||||||
<a
|
<a
|
||||||
href="https://github.com/metatube-community/metatube-server"
|
href="https://metatube-community.github.io/README_ZH/"
|
||||||
target="_blank"
|
target="_blank"
|
||||||
rel="noreferrer"
|
rel="noreferrer"
|
||||||
className="text-xs text-brand-500 hover:underline flex items-center gap-1"
|
className="text-xs text-brand-500 hover:underline flex items-center gap-1"
|
||||||
|
|||||||