Minimalist, Blazing-Fast Japanese Anime Subtitle Fetcher & Auto-Syncer for Passive Language Immersion.
┌───────────────────────────────────────────────────────────────┐
│ ⛩️ S U B S I N K ── Japanese Anime SubSyncer │
└───────────────────────────────────────────────────────────────┘
subsink is a high-performance terminal UI utility written in Rust designed for Japanese language learners and passive immersion fans. It automates selecting raw anime files, fuzzy-searching 4,500+ Japanese anime titles from Jimaku.cc, downloading subtitle archives, and automatically aligning speech timings to video audio using ALASS.
- ⚡ Instant Local Fuzzy Match: Caches Jimaku's 4,500+ anime index locally for instant
< 5mslive fuzzy searching as you type. - 🎯 Automated ALASS Audio Alignment: Uses voice activity detection (VAD) to shift subtitle timestamps directly against your video's audio stream.
- 🏷️ Smart Filename Parser: Automatically strips release group tags (
[VCB-Studio],1080p,x265, etc.) to extract clean anime titles and episode numbers. - 📦 30-Day Per-Anime Cache: Remembers episode file listings for 30 days—binge 12 episodes with zero network delay.
- 🎨 Minimalist Aesthetic TUI: Clean terminal cards, smooth progress spinners, and deep anime color palette.
- Rust & Cargo:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
- ffmpeg (for audio extraction):
# Arch Linux / Omarchy sudo pacman -S ffmpeg - ALASS (Subtitle Synchronization Engine):
cargo install alass-cli
curl -fsSL -H 'Cache-Control: no-cache' https://raw.githubusercontent.com/Praveensenpai/subsink/main/install.sh | bashgit clone https://github.com/Praveensenpai/subsink.git
cd subsink
cargo build --release
install -m 755 target/release/subsink ~/.local/bin/subsink[Raw Video (.mkv)] ──► [subsink] ──► [Jimaku.cc Search] ──► [ALASS Audio Sync] ──► [<video_name>.ja.srt]
│
▼
[immersionpod / impd]
- Run
subsinkanywhere in your terminal. - Select your raw anime video file from
~/Videos. - Type to filter through 4,500+ anime titles live.
- Select the matching episode subtitle.
subsinkdownloads, aligns timestamps via ALASS, and outputs<video_name>.ja.srtalongside your raw video file for instant use withimpd/mpd/mpv.
MIT License © Praveensenpai