YellowFruit third-party client
★ 7,387⑂ 2,782
7,387
stars
+2,890
2,782
forks
–
watchers
–
prs
–
issues
–
releases
–
discussions
README
关于本项目:HGhub 只是我体验 Tuari2 移动端开发时做的小玩具,开源几天后不知为何收到了大量star。 意识到可能存在的潜在危险后,我立刻更换了开源协议为 PolyForm Noncommercial 1.0.0 ,并在 Readme 中写入了大量保护自己的文段。目前 HGhub收到的star实际上德不配位。 在之后的更新中,我不再会维护任何获取上游数据的工作,维护方向将偏重于 UI/UX 与使用体验,同时仍会低频率的响应 PR 与 Issues。如果版权方或其授权代表认为本项目涉及其合法权益,欢迎通过 GitHub 仓库留言联系。收到明确的权利方通知后,我会第一时间积极响应,并根据对方诉求立即归档项目或将仓库转为私有,停止公开访问。 HGhub 黄果短剧第三方客户端 · Rust + Tauri 2 Windows / macOS / Android 三端 · Fluent 设计 · 沉浸式竖屏播放 ⚠️ 本项目仅供 学习与技术交流,不提供、不存储、不分发任何音视频内容。 所有内容均来自第三方站点,版权归原作者与上游站点所有。 使用须知 - 以访客身份正常使用:像普通访客一样浏览就好,请勿滥用本项目。 - 不要给上游增加压力:本项目本身不提供下载功能,请勿改动代码去做批量下载 / 批量抓取,也不要高频轮询、并发轰炸接口或挂机刷播放量;内置的封面与播放列表缓存请不要改小或关掉。 - 尊重上游版权:不要去除水印与站点标识,不要把剧集搬运、转码、修改后二次分发到别处(网盘、资源站、其他 App 等),更不能改完拿出去出售。 - 不要公开传播接口与直链:接口地址、播放直链、解密方式请勿公开张贴或打包成「资源站」——上游一旦封禁,所有人都没法再用。 - 不要商业化:禁止打包出售、接入广告 / 会员 / 付费点播,或作为收费服务的一部分分发(详见 LICENSE)。 - 合理使用:仅供个人学习、研究与自用;请在 24 小时内删除相关资源,并支持正版。 - 遵守当地法律:使用者应自行判断并承担合规责任。 ⚖️ 许可证自 v1.1.0 版本起改为 PolyForm Noncommercial 1.0.0:禁止任何商业用途—— 包括打包出售、接入付费/会员/广告变现、作为收费产品或服务的一部分分发。 个人学习、研究、自用与非营利使用不受限制,详见 LICENSE。 官方渠道与仿冒提醒 - 唯一官方仓库:github.com/Minireel/HGhub - 唯一下载渠道:GitHub Releases。仓库源码页不放任何可执行文件, 其余网站、网盘、QQ 群、公众号、第三方下载站分发的「HGhub」安装包一律非官方,作者不保证其安全性与完整性。 🚫 已发现的恶意修改版:hichuv/HGhub 该仓库与本项目无关,是在旧版本源码基础上擅自加入卡密验证、VIP 付费解锁等变现功能的修改版, 代码改动不透明、安全性无法验证。请勿下载、勿注册、勿付费;如已安装,建议立即卸载,改用官方 Release 包安装。 本项目从未、也不会加入任何卡密 / VIP / 付费解锁 / 广告功能。如果你遇到的「HGhub」要求输入卡密或付费开通,那一定不是官方版本。 技术栈 | 层 | 选型 | | --- | --- | | 壳 | Tauri 2(Rust 1.90+) | | 前端 | React 19 + TypeScript + Vite 7 + Tailwind CSS 4 | | 播放 | hls.js(HLS / AES-128) | | 网络 | reqwest + rustls | 目录 . ├─ src/ 前端 │ ├─ api.ts 接口封装 + 本地媒体协议 URL │ ├─ store.tsx 全局状态(导航栈 / 用户 / 本地收藏 / 主题) │ ├─ html.ts 吃瓜正文清洗与图片代理 │ ├─ components/ Feed(播放页)/ VideoSurface / PlayerControls / Panels / UI │ └─ pages/ Home / Search / Category / Profile / Posts ├─ src-tauri/ Rust 后端 │ └─ src/ │ ├─ net.rs 请求层(边缘信封 + 重试) │ ├─ api.rs 业务命令 │ ├─ media.rs 封面解密 + HLS 代理 + 缓存 │ └─ session.rs token 持久化 └─ docs/API.md 接口文档 开发 / 构建 bash pnpm install 首次安装 pnpm app:dev 桌面端热重载 pnpm app:build 打包:Windows → NSIS 安装程序;macOS → .app + .dmg macOS 先装 Xcode Command Line Tools(xcode-select --install),打包目标写在 src-tauri/tauri.macos.conf.json(app + dmg,窗口用系统标题栏 Overlay)。 Android(需 Android SDK + NDK,并配置 ANDROID_HOME / NDK_HOME): bash pnpm android:init 首次生成 android 工程 pnpm android:dev 真机 / 模拟器调试 pnpm android:build 产出 APK iOS(需 Xcode、xcodegen、CocoaPods 与 Apple 开发者账号;自行签名安装到自己的设备): bash export APPLE_DEVELOPMENT_TEAM= pnpm tauri ios init --ci 首次生成 Xcode 工程(src-tauri/gen/apple) pnpm tauri ios build --export-method debugging 产出 src-tauri/gen/apple/build/arm64/HGhub.ipa xcrun devicectl device install app --device 最低系统版本写在 src-tauri/tauri.ios.conf.json(iOS 15)。iOS 复用安卓的触屏界面;自定义协议与 macOS 相同,为 hg://localhost。