sudacode 4fc34ec787 refactor(main): add runtime domain registry and fan-in guardrails
Introduce runtime domain barrel exports and registry composition support, and document/check main runtime fan-in workflow with related backlog planning artifacts.
2026-02-21 21:21:44 -08:00
2026-02-20 03:39:09 -08:00
2026-02-09 19:04:19 -08:00
2026-02-15 16:28:00 -08:00
2026-02-09 19:04:19 -08:00
2026-02-17 22:54:09 -08:00
2026-02-17 22:54:09 -08:00
2026-02-19 19:10:02 -08:00
2026-02-09 19:04:19 -08:00
2026-02-20 03:39:09 -08:00

SubMiner logo

SubMiner

Look up words, mine to Anki, and enrich cards with context — without leaving mpv.

License: GPL v3 Linux Docs


SubMiner demo (GIF preview)


What it does

SubMiner is an Electron overlay that sits on top of mpv. It turns your video player into a full sentence-mining workstation:

  • Hover to look up — Yomitan dictionary popups directly on subtitles
  • One-key mining — Creates Anki cards with sentence, audio, screenshot, and translation
  • N+1 highlighting — Marks known words from your Anki deck so unknown ones jump out
  • Subtitle tools — Download from Jimaku, sync with alass/ffsubsync, all in-player
  • Immersion tracking — SQLite-powered stats on your watch time and mining activity
  • Texthooker page built in — WebSocket streaming to external tools, no extra setup

Quick start

1. Install

Linux (AppImage):

wget https://github.com/ksyasuda/SubMiner/releases/latest/download/SubMiner-0.1.0.AppImage -O ~/.local/bin/SubMiner.AppImage
chmod +x ~/.local/bin/SubMiner.AppImage
wget https://github.com/ksyasuda/SubMiner/releases/latest/download/subminer -O ~/.local/bin/subminer
chmod +x ~/.local/bin/subminer

Note

The subminer wrapper uses a Bun shebang. Make sure bun is on your PATH.

From source or macOS — see the installation guide.

2. Install the mpv plugin and configuration file

wget https://github.com/ksyasuda/SubMiner/releases/latest/download/subminer-assets-0.1.0.tar.gz -O /tmp/subminer-assets.tar.gz
tar -xzf /tmp/subminer-assets.tar.gz -C /tmp
cp /tmp/plugin/subminer.lua ~/.config/mpv/scripts/
cp /tmp/plugin/subminer.conf ~/.config/mpv/script-opts/
mkdir -p ~/.config/SubMiner && cp /tmp/config.example.jsonc ~/.config/SubMiner/config.jsonc

3. Set up Yomitan Dictionaries

subminer app --start --yomitan

4. Mine

subminer app --start --background
subminer video.mkv

Requirements

Required Optional
mpv with IPC socket yt-dlp
mecab + mecab-ipadic fzf / rofi
Linux: hyprctl or xdotool + xwininfo chafa, ffmpegthumbnailer
macOS: Accessibility permission

Documentation

For full guides on configuration, Anki, Jellyfin, and more, see docs.subminer.moe.

Acknowledgments

Built on the shoulders of GameSentenceMiner, mpvacious, Anacreon-Script, and autosubsync-mpv. Subtitles powered by Jimaku.cc. Dictionary lookups via Yomitan.

License

GNU General Public License v3.0

Languages
TypeScript 94.8%
Lua 2.2%
Shell 1.2%
CSS 0.9%
HTML 0.4%
Other 0.5%