About this project
Migurdex is a command-line tool prepared for searching and watching Turkish anime from the terminal. It consists of a TUI (text-based interface), a local HTTP API, and a network layer written in Rust; playback is done through MPV.
Notable capabilities:
- Fuzzy search support (for example, typing "opc" returns One Piece).
- 13 Turkish providers: Acheriya, AniHub, AnimeciX, Animexe, AnimPow, Anizium, Anizm, AsyaAnimeleri, OpenAnime, SonAnime, TrAnimeIzle, TRAnimeci, and the archive-oriented TurkAnime.
- Fetching information/posters and syncing watch status via AniList and MAL.
- Resuming from where you left off with MPV; keeping history, favorites, and search history.
- Discord RPC (configurable), incognito mode (pauses history and sync).
- Automatic source selection: selects according to server, quality, and type rules; if none match, presents a manual list.
- Enabling/disabling per provider and setting ranking priority.
Installation can be done with scripts for Linux and Windows (install.sh / install.ps1) or with the tar.gz, zip, and AppImage packages on the Releases page. Requirements include MPV being installed and on PATH, libfuse2 for AppImage, and .NET 10 SDK and Rust/cargo for building from source.
The usage flow is Search -> Detail -> Source -> Play. In the menu, arrow keys and Enter are used, and Esc is used to go back. There is also a command-line mode that works without entering the menu: commands such as `migurdex search`, `migurdex play`, and `migurdex continue` allow direct search and playback; with `--json` you can get JSON output, and with `--debug` you can get the resolved URL without opening mpv. `migurdex update` checks for and installs updates; the channel (stable/prerelease) and automatic check can be changed in settings.
From the settings menu, autoplay, wait time, Discord RPC and title mode, incognito mode, player logs, API address (default http://127.0.0.1:7045), AniList/MAL connection, provider enable/disable, ranking priorities, and automatic selection rules can be edited. Data is stored on Linux under ~/.config/migurdex/, and on Windows under %APPDATA%\migurdex\ as a SQLite database (history, favorites, search, tokens, mappings), config.json, and logs.
The architecture consists of Migurdex.Api (search, detail, source resolution), Migurdex.Cli (terminal interface), Migurdex.Core (plugin loader, Rust bridge, extractors), Migurdex.Shared (models and IAnimeProvider, IExtractor interfaces), Migurdex.Native (Rust HTTP client), and Plugins/ (providers). The flow is TUI -> API -> plugin (+ Rust HTTP) -> source list -> MPV. The native library (libmigurdex_native.so / migurdex_native.dll) comes with the API. Built-in extractors are under Migurdex.Core/Extractors and can be called via the API through the GET /api/v1/extractors and POST /api/v1/extractors/resolve endpoints.
The TurkAnime provider uses a cleaned and verified version of the archive of the closed site; it is queried through a live Turso database. Building can be done with build.sh / build.ps1 scripts (debug, release, publish) or with `dotnet run` in two terminals; tests are run with `dotnet test`. The project is under the GPL-3.0 license. The roadmap includes planned items for skipping to new episodes and intro skip.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.