Wiki • Features • Frequently Asked Questions • Building and Development • Download
Shiru is a fork of Miru that is focused on providing a better feature rich experience with free mobile support. The overall goal was to implement features and design a similar experience to using a streaming website with functionality akin to MalSync and AniSkip.
This is a pure JS BitTorrent streaming environment, with a built-in list manager. Imagine qBit + Taiga + MPV, all in a single package, but streamed real-time. Completely ad free with no tracking/data collection.
This app is meant to feel, look, work and perform like a streaming website/app, while providing all the advantages of torrenting, like file downloads, higher download speeds, better video quality and quicker releases.
Unlike qBit's sequential approach, seeking into data that hasn't been downloaded yet will prioritise downloading that data, instead of simply closing MPV.
- full AniList and MyAnimeList integration
- filter anime by name, genre, season, year, format, status
- view anime on your planning and watching list
- add and remove anime from your planning list
- automatically mark episodes as complete as you watch them
- view trailers/previews for anime
- score anime
- view anime relations
- automatically find torrents for desired episodes
- automatically detect what anime a torrent is
- view latest releases on any custom RSS
- sub airing schedule
- dub airing schedule
- dub episode tracking
- sub and dub notifications
- find anime by image [just paste an image into the app]
- full subtitle support
- support for softcoded subtitles
- support for external subtitle files
- support for VTT, SSA, ASS, SUB, TXT subtitles
- subtitle display in PiP
- keybinds for all functions:
- S - seek forwards 90 seconds [skip opening]
- R - seek backwards 90 seconds
- → - seek forwards 2 seconds
- ← - seek backwards 2 seconds
- ↑ - increase volume
- ↓ - decrease volume
- M - mute volume
- C - cycle through subtitle tracks
- N - play next episode [if available]
- B - play last episode [if available]
- F - toggle fullscreen
- P - toggle picture in picture
- [ - increase playback speed
- ] - decrease playback speed
- \ - reset playback speed to 1
- I - view video stats for nerds
- ` - open keybinds UI
- editable keybinds ` allows drag dropping any key
- miniplayer
- media session display
- media keys support
- Discord rich presence
- preview thumbnails
- pause on lost focus
- autoplay next episode
- multi-audio support
- torrent download progress on the seek bar
- select downloads folder
- specify download/upload speeds
- support for most popular BEP's
- support for custom torrent RSS feeds for latest releases
- change what resolution to find torrents in
- stream real-time with no waiting for downloads
- support for custom extensions for custom sources and trackers
If you use paru:
paru -S shiru-bin
If you use yay:
yay -S shiru-bin
- Download the
linux-Shiru-version.deb
from the releases page. - Install the deb file with package manager.
apt install linux-Shiru-*.deb
Credit to Migu for doing the legwork on this.
- PNPM (or any package manager)
- NodeJS 20+
- Docker (with WSL support if you're on Windows)
- ADB
- Android Studio (SDK 34)
- Java 21 (JDK)
- Navigate to the Electron directory:
cd electron
- Install dependencies:
pnpm install
- Development:
pnpm start
- Release:
pnpm build
- Navigate to the Capacitor directory:
cd capacitor
- Install dependencies:
pnpm install
- Check what's missing:
pnpm exec cap doctor
- (First time only) Build native code:
- Windows:
pnpm build:native-win
- Linux:
pnpm build:native
- (Optional) Generate assets:
pnpm build:assets
- Open the Android project:
pnpm exec cap open android
- Connect your phone with ADB.
- Development:
pnpm dev:start
- Release:
pnpm build:app
This project acknowledges and complies with the GPLv3 license.