这个项目能做什么
Migurdex 是一款命令行工具,用于从终端搜索和观看土耳其语动漫。它由 TUI(文本界面)、本地 HTTP API 和用 Rust 编写的网络层组成;播放通过 MPV 完成。
显著功能:
- 模糊搜索支持(例如,输入“opc”会返回《海贼王》)。
- 13 个土耳其提供商:Acheriya、AniHub、AnimeciX、Animexe、AnimPow、Anizium、Anizm、AsyaAnimeleri、OpenAnime、SonAnime、TrAnimeIzle、TRAnimeci 以及面向存档的 TurkAnime。
- 通过 AniList 和 MAL 获取信息/海报并同步观看状态。
- 使用 MPV 从上次停止处继续播放;保留历史记录、收藏和搜索历史。
- Discord RPC(可配置)、隐身模式(暂停历史和同步)。
- 自动源选择:根据服务器、质量和类型规则选择;若无匹配,则显示手动列表。
- 按提供商启用/禁用并设置排名优先级。
安装可通过 Linux 和 Windows 的脚本(install.sh / install.ps1)或 Releases 页面上的 tar.gz、zip 和 AppImage 包完成。要求包括 MPV 已安装并在 PATH 中、AppImage 需要 libfuse2,以及从源码构建需要 .NET 10 SDK 和 Rust/cargo。
使用流程为 搜索 -> 详情 -> 源 -> 播放。在菜单中,使用方向键和回车键,Esc 键返回。还有无需进入菜单即可工作的命令行模式:诸如 `migurdex search`、`migurdex play` 和 `migurdex continue` 等命令允许直接搜索和播放;使用 `--json` 可获取 JSON 输出,使用 `--debug` 可获取解析后的 URL 而不打开 mpv。`migurdex update` 检查并安装更新;频道(稳定版/预发布版)和自动检查可在设置中更改。
从设置菜单中,可以编辑自动播放、等待时间、Discord RPC 和标题模式、隐身模式、播放器日志、API 地址(默认 http://127.0.0.1:7045)、AniList/MAL 连接、提供商启用/禁用、排名优先级和自动选择规则。数据存储在 Linux 上的 ~/.config/migurdex/ 和 Windows 上的 %APPDATA%\migurdex\ 中,作为 SQLite 数据库(历史、收藏、搜索、令牌、映射)、config.json 和日志。
架构由 Migurdex.Api(搜索、详情、源解析)、Migurdex.Cli(终端界面)、Migurdex.Core(插件加载器、Rust 桥接、提取器)、Migurdex.Shared(模型和 IAnimeProvider、IExtractor 接口)、Migurdex.Native(Rust HTTP 客户端)和 Plugins/(提供商)组成。流程为 TUI -> API -> 插件(+ Rust HTTP)-> 源列表 -> MPV。原生库(libmigurdex_native.so / migurdex_native.dll)随 API 一起提供。内置提取器位于 Migurdex.Core/Extractors 下,可通过 API 的 GET /api/v1/extractors 和 POST /api/v1/extractors/resolve 端点调用。
TurkAnime 提供商使用已关闭网站的清理和验证版本存档;通过实时 Turso 数据库查询。构建可使用 build.sh / build.ps1 脚本(调试、发布、发布)或在两个终端中使用 `dotnet run`;测试使用 `dotnet test` 运行。项目采用 GPL-3.0 许可证。路线图包括跳转到新剧集和跳过片头的计划项目。
评论
0 人表达喜爱 · 满10人后显示 Deer Point
登录后参与讨论。