feat(anime): add anime browser powered by Aniyomi extensions

- Add `subminer anime` / `--anime` and a tray entry to open a browser that searches installed Aniyomi extension sources, shows cover art and episodes, and plays into mpv with overlay/mining attached
- Add an Extensions tab to add repos and install/update/remove sources, and per-source settings for sources needing config
- Support searching all sources at once with streaming, per-source results and status
- Prefer Japanese audio/subtitle tracks from the source and keep the primary subtitle slot reserved for Japanese
- Fix window/tray/Dock handling so the browser and mpv can be switched between without quitting the app or losing the Dock icon
- Add anime.repos, anime.extensionsDir, anime.preferredQuality config keys (no bundled repos or discovery)
This commit is contained in:
2026-08-15 21:44:51 -07:00
parent a02c33dac4
commit ec48f90cd4
111 changed files with 7218 additions and 182 deletions
+18
View File
@@ -42,6 +42,24 @@ export interface YoutubePickerResolveResult {
message: string;
}
export interface AnimeConfig {
/**
* Directory holding Aniyomi extension `.apk` files. Defaults to
* `<userData>/anime-extensions` when unset.
*/
extensionsDir?: string;
/**
* Extension repository index URLs (any https `.json` index, such as
* `https://.../index.min.json`).
*
* Ships empty and stays empty unless the user adds one. SubMiner performs no
* repository discovery and bundles no sources.
*/
repos?: string[];
/** Preferred stream label, matched as a substring, e.g. "1080". */
preferredQuality?: string;
}
export interface JimakuConfig {
apiKey?: string;
apiKeyCommand?: string;