Skip to content

AshtakaOOf/Shiru-linux-stuff

 
 

Repository files navigation

Shiru

Stream anime torrents, real-time with no waiting for downloads

WikiFeaturesFrequently Asked QuestionsBuilding and DevelopmentDownload

showcase
chat GitHub all releases

About

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.

Features

Anime:

  • 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]

Video:

  • 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

Torrent:

  • 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

Linux Installation

Arch

If you use paru:

paru -S shiru-bin

If you use yay:

yay -S shiru-bin

Debian/Ubuntu

  • Download the linux-Shiru-version.deb from the releases page.
  • Install the deb file with package manager.
apt install linux-Shiru-*.deb

Building and Development

Credit to Migu for doing the legwork on this.

Requirements

  • PNPM (or any package manager)
  • NodeJS 20+
  • Docker (with WSL support if you're 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. Development:
    pnpm start
  4. Release:
    pnpm build

Building for Android (Capacitor)

  1. Navigate to the Capacitor directory:
    cd capacitor
  2. Install dependencies:
    pnpm install
  3. Check what's missing:
    pnpm exec cap doctor
  4. (First time only) Build native code:
  • Windows:
    pnpm build:native-win
  • Linux:
    pnpm build:native
  1. (Optional) Generate assets:
    pnpm build:assets
  2. Open the Android project:
    pnpm exec cap open android
  3. Connect your phone with ADB.
  4. Development:
    pnpm dev:start
  5. Release:
    pnpm build:app

License

This project acknowledges and complies with the GPLv3 license.

About

Testing Linux stuff on Shiru (i think?)

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Svelte 54.7%
  • JavaScript 43.3%
  • CSS 0.9%
  • Shell 0.5%
  • Java 0.3%
  • HTML 0.2%
  • Dockerfile 0.1%