Shiru makes enjoying your media library effortless. Organize, track, and play content you legally own—all in one place. No complicated setups, no barriers—just your media, ready to go.
Find a file
RockinChaos f4fd91e1c5
fix: missing banner images
Fixes banner images vanishing after navigating to series that do not have banner images.
2025-12-30 22:19:58 -08:00
.github chore: update deps 2025-12-19 20:53:55 -08:00
capacitor fix: null/undefined checks 2025-12-26 15:49:14 -08:00
client chore: update deps 2025-12-26 18:28:55 -08:00
common fix: missing banner images 2025-12-30 22:19:58 -08:00
electron fix: recover from IndexedDB corruption 2025-12-30 18:31:52 -08:00
extensions feat: dynamic extension loading 2025-05-11 20:57:59 -07:00
patches fix: separate notch from system bar detection 2025-12-22 20:22:21 -08:00
.eslintrc fix(web): opensearch 2024-02-18 15:40:54 +01:00
.gitignore chore: shiru 2024-10-12 16:56:20 -07:00
.gitmodules fix: submodules 2023-12-06 10:36:59 +01:00
.npmrc fix: shamefully-hoist 2025-10-03 16:45:11 -07:00
jsconfig.json chore: refactor 2025-12-12 00:00:00 -08:00
LICENSE bring license file back 2022-03-19 21:38:08 +01:00
package.json chore: update deps 2025-12-26 18:28:55 -08:00
pnpm-lock.yaml chore: update deps 2025-12-26 18:28:55 -08:00
pnpm-workspace.yaml fix(capacitor): dist nodejs files correctly 2023-12-06 14:42:59 +01:00
types.d.ts feat: add seadex mappings 2024-01-02 03:04:59 +01:00

Shiru

Manage your personal media library, organize your collection, and stream your content in real time, no waiting required!

📚 Wiki Features FAQ🔧 Building & Development⬇️ Download

Important

This application does not host, distribute, or provide media content.

Shiru is intended solely as a personal media library manager for organizing and playing content that you legally own. Please ensure that any media you use with this app is obtained legally and that you respect all applicable copyright laws.

https://github.com/user-attachments/assets/4fa7d60e-ae48-4fb9-9d20-f129f7f907a9

Downloads Latest Release Last Commit Stargazers License: GPLv3

📃 About

Shiru is designed to enhance your personal media experience with a feature-rich environment and full mobile support. It provides a seamless way to organize, track, and play content you legally own.

Shiru lets you enjoy your collection in real time, with fast playback, high-quality video, and a clean, ad-free interface.

Key Features:

  • 🪄 Anime integration with AniList & MyAnimeList
  • 💬 Full subtitle support with softcoded and external files
  • Seamless video controls and keyboard shortcuts
  • 🌐 Real-time library playback for fast access to content you own

🎥 Anime Features:

  • 🪄 Full AniList & MyAnimeList Integration:

    • Filter by name, genre, season, year, format, and status.
    • Manage your watching & planning lists easily.
    • Automatically mark episodes as completed after watching.
    • Watch trailers and previews.
    • Rate and score anime.
    • Explore related anime.
  • 🌐 Advanced content fetching (for legally owned media):

    • Recognize content by series.
    • Automatically detect episodes from file names.
    • Support for custom feeds and resolution preferences.
    • Stream your content in real time without waiting.
    • Support for custom extensions.
    • Adjustable network speeds.
  • 🔔 Dub & Sub Notifications:

    • Schedules and tracking for both dub and sub releases.
    • Instant notifications on new episodes!

🎬 Video Playback Features:

  • 💬 Full Subtitle Support:

    • Softcoded and external subtitles (VTT, SSA, ASS, SUB, TXT).
    • Picture-in-Picture (PiP) mode for multitasking.
  • 🎮 Keybindings:

    • S: Skip opening (seek forward 90s).
    • R: Seek backwards 90s.
    • : seek forwards 2 seconds.
    • : seek backwards 2 seconds.
    • : increase volume.
    • : decrease volume.
    • M: Mute volume.
    • C: Cycle through subtitle tracks.
    • F: toggle fullscreen.
    • P: toggle picture in picture.
    • N/B: Next/previous episode.
    • O: View anime details.
    • V: Toggle volume limit increase.
    • [: Increase playback speed.
    • ]: Decrease playback speed.
    • \: reset playback speed to 1.
    • I: Show video stats.
    • `: Open keybinds UI (edit keybinds by drag and dropping any key).
  • 👏 Other Features:

    • Miniplayer and media session support.
    • Pausing when window focus is lost.
    • Autoplaying the next episode.
    • Switching between multiple audios.
    • Discord Rich Presence integration.
    • Preview thumbnails and autoplay next episodes.
    • Progress indicators visible on the seek bar

⚙️ Installation

🐧 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)

🔧 Building & Development

Credit to NoCrypt for doing the legwork on this.

📋 Requirements:

  • PNPM (or any package manager)
  • NodeJS 22.21.1
  • Visual Studio 2022 (if on Windows)
  • Docker (with WSL on Windows)
  • ADB & Android Studio (SDK 34)
  • Java 21 (JDK)

💻 Building for PC (Electron):

  1. Navigate to the Electron directory:
    cd electron
    
  2. Install dependencies:
    pnpm install
    
  3. Start development:
    pnpm start
    
  4. Build for release:
    pnpm build
    

📱 Building for Android (Capacitor):

  1. Navigate to the Capacitor directory:
    cd capacitor
    
  2. Install dependencies:
    pnpm install
    
  3. Run the doctor to check for missing dependencies:
    pnpm exec cap doctor
    
  4. (First time only) Build native code:
    • Windows:
      pnpm build:native-win
      
    • Linux:
      pnpm build:native
      
  5. (Optional) Generate assets:
    pnpm build:assets
    
  6. Open the Android project:
    pnpm exec cap open android
    
  7. Connect your device with ADB and start development:
    pnpm dev:start
    
  8. Build the app for release (APK will not be signed):
    pnpm build:app
    

📜 License

This project follows the GPLv3 License.