Noureddine RAMDI / Shiru: a dub-first anime library manager with deep local playback and schedule tracking

Created Sat, 23 May 2026 20:41:14 +0000 Modified Sat, 23 May 2026 20:41:27 +0000

RockinChaos/Shiru

Shiru addresses a persistent pain point in anime library management: handling the complexities of sub vs. dub release schedules. Many anime fans prefer dubbed episodes but find existing apps clunky because they treat subs and dubs as a single timeline or ignore the dub schedule altogether. Shiru’s approach is different — it tracks sub and dub release calendars independently per series, enabling a “Prefer Dubs” mode that hides shows from the Continue Watching list until the next dubbed episode airs. This solves a real UX problem at the data-model level instead of as an afterthought.

What Shiru is and how it manages your anime collection

Shiru is a cross-platform anime library manager built primarily with Svelte and packaged with Tauri to deliver native desktop and Android experiences. It supports Windows, Linux (including Arch and Debian/Ubuntu packages), macOS (both Apple Silicon and Intel), Android, and Android TV.

The app focuses on local-first media playback — it plays personally owned media files directly without transcoding, preserving quality and reducing resource consumption. It integrates deeply with popular anime tracking services AniList and MyAnimeList, syncing watch lists and progress, and allowing seamless discovery.

Under the hood, Shiru manages two independent release schedules per series: sub and dub. Each episode tracks its audio label so the app can distinguish subbed and dubbed versions, and users can configure preferences around which they want to watch first. This dual-schedule tracking is unusually thorough, with real-time release notifications for sub, dub, and even hentai episodes.

Shiru supports softcoded and external subtitles in multiple formats (VTT, SSA, ASS, SUB, TXT) and remembers subtitle track selections per series, improving user convenience. It features chapter-aware seeking, detects OP/ED segments for skip, and offers customizable keybindings with a drag-and-drop editor. An optional plugin/extension system allows connecting to personal media servers for content sourcing beyond local files.

Additional quality-of-life features include multiple user profiles, full offline support, and Discord Rich Presence integration, which lets you share what you’re watching in real time.

The dub-first architecture and technical strengths

The standout technical characteristic of Shiru is its dub-first architecture. Most anime players treat subs and dubs as interchangeable or merge them into one timeline, which causes UX friction for dub-preferring audiences. Shiru models sub and dub schedules independently at the data layer, pairing each episode with its release calendar and audio label.

This architectural choice demands a more complex data model and UI logic, but it pays off in user experience. The app can hide shows from Continue Watching until the next dubbed episode is available, avoiding confusion and clutter. This solves a problem many other managers ignore or patch clumsily.

On the playback side, Shiru’s local-first design means it does not rely on streaming or transcoding. This reduces latency and resource usage, but it requires users to own their media files and manage them locally. The tradeoff is clear: better performance and control at the cost of more manual library management.

The codebase is mostly Svelte for the UI, which offers a reactive, component-driven approach well-suited for desktop and mobile alike. Tauri wraps the app, providing native capabilities while keeping binary sizes small compared to Electron-based alternatives. This architecture supports a consistent user experience across platforms.

Subtitles support is robust, with per-series track memory and support for popular subtitle formats. The detection of OP/ED segments for skip is a nice touch that improves playback experience but relies on accurate chapter metadata.

The extension system is optional and flexible, letting users connect to personal media servers. This adds extensibility without bloating the core app.

Quick start

Linux Installation

Arch:

paru -S shiru

Or if you use yay:

yay -S shiru

Debian/Ubuntu:

  1. Download the linux-Shiru-version.deb from the releases page.

  2. Install using the package manager:

    apt install linux-Shiru-*.deb
    

Windows Installation

Option 1: Install via Winget

For Windows 10 1809 or later, or Windows 11:

winget install shiru

Option 2: Installer or Portable Version

  1. Download from the releases page:
    • Installer: win-Shiru-vx.x.x-installer.exe
    • Portable: win-Shiru-vx.x.x-portable.exe (No installation required, just run it)

verdict

Shiru is well-suited for anime enthusiasts who prefer to manage their own media collection locally and have a strong preference for dubbed content. Its dub-first architecture fills a niche that many players overlook, improving watchlist management and user experience around dual release schedules.

The tradeoff is that Shiru assumes you own your media files and are comfortable managing them without streaming or transcoding conveniences. Also, while its cross-platform support is broad, setting up extensions or integrating with personal media servers adds complexity.

Developers interested in hybrid Svelte/Tauri apps will find Shiru’s codebase a good example of cross-platform UI with native capabilities. The focus on detailed schedule tracking and playback features makes it worth understanding even if you don’t adopt it outright.

Overall, Shiru solves a real-world problem with a data-model driven approach rather than UI hacks. It’s a solid effort in a niche but demanding domain, with honest tradeoffs and a clean architecture.


→ GitHub Repo: RockinChaos/Shiru ⭐ 381 · Svelte