Skip to content
Proyectos

torsher-app/torsher has 55 GitHub stars and 1 forks. GitHot measured +2 stars in 24 hours and +14 in 7 days. Last checked 2026-11-12 08:28 UTC. Last push 2026-11-05.

Cómo se miden estas cifras

Tu cine en casa en un solo contenedor: una selección de contenidos para TV, tu propia biblioteca, reproducción mientras se descarga el archivo y nuevos episodios que llegan automáticamente. Se aloja en tus propios servidores y está diseñado pensando primero en la televisión.

Crecimiento de estrellas medido

in 24h
+2
in 7 days
+14
in 15 days
Recopilando historial
in 1 month
Recopilando historial

Cambios netos en períodos que se solapan, no totales diarios. Los datos no disponibles se dejan en blanco. Las estrellas indican interés, no calidad.

README.md

Original

Torsher

Torsher

Your home cinema in one container.

Browse a catalog on your TV, start playback while the file downloads, keep what you watched in your own library, and let new episodes arrive on their own.
Self-hosted and open source, built for the TV first.

GitHub release GitHub stars GitHub license Docker pulls

Install  |  Documentation  |  Panel demo  |  Releases  |  Discussions  |  Community  |  Website


Torsher showcase on a TV with the Continue watching row

Runs on x86-64 and arm64 Linux · Watch in a browser or on LG webOS
Titles and artwork in the picture are made up.


Support

Torsher is open source and built by one developer. Donations are its only funding: there are no paid features, no ads and no telemetry. Donations pay for development time and test hardware and have nothing to do with content or the sources you connect.

See the Donate page.

About

Torsher started when I bought a mini PC with an Intel N150 as a home server and set up the usual self-hosted media stack on it: Jellyfin, Sonarr, Radarr, Prowlarr and Seerr. It worked, but I got tired of keeping it together. Each app has its own interface, settings and database, they all have to be wired to each other, and the TV is only the last link in the chain.

So I built the one thing I wanted instead: a media center in one Docker container, on a mini PC, a NAS or a desktop. One process with one database and one interface does the jobs of a torrent client, a media server, series and movie managers and a request app, and the TV comes first. The indexer stays outside: Torsher connects to any Torznab indexer, for example Prowlarr or Jackett.

Features

Watch right away

Pick a title and select Watch. Torsher finds releases in your indexers and starts playback while the file downloads.

  • Releases ranked by quality and voice-over, with dubbing and voice-over studios shown
  • Downloads a few minutes ahead of where you are and stops when you close the player, so nothing fills your disk by accident
  • Audio and subtitle tracks switch in the player
  • When a TV or a browser can't play a file, the server converts it on the fly, on the GPU if it has one

Your library

What you watch stays in a cache that cleans itself up. Keep moves the file into your library.

  • Laid out by title so Jellyfin, Plex and Kodi can read it too
  • On one volume a kept file is hard-linked: it keeps seeding and takes no extra space
  • Folders you already have are indexed in place and never written to
  • Home videos get their own section

Follow

Follow a series on the TV, and new episodes download automatically when matching releases become available.

  • In your voice-over and the best quality released
  • The same voice-over for the whole season
  • A followed movie downloads once it is out digitally
  • The control panel lists every follow with its episodes and the releases found for each

A showcase made for the TV

Movies and series with posters, descriptions, cast and ratings from TMDB.

  • Arrows, OK and Back on the remote, or the Magic Remote pointer and a mouse in any browser
  • Profiles for the household, each with its own progress, lists, ratings and language and an optional PIN
  • Progress belongs to the title, not the file: switch the release and keep your place
  • Written for the browser engine of LG TVs from 2020

Control panel

Everything is set up in the browser, on a phone or a computer: sources, storage, profiles and devices. Try it before installing: the panel demo runs in your browser on made-up data.

  • A setup wizard that checks storage, the network and your indexer
  • DNS over HTTPS and routes through your own SOCKS5 or HTTP proxy, per host
  • Daily database backups, restore and export to another server
  • Notifications about problems, finished downloads and new episodes in Telegram, a webhook, ntfy, Gotify or email

Quick start

You need a computer with Docker and the Compose plugin. Linux gets every feature; Docker Desktop on macOS and Windows transcodes on the CPU only.

On Unraid, install Torsher from Community Applications instead: search for Torsher under Apps. The template and its details are in torsher-app/unraid-templates.

  1. Download the install file, docker-compose.yml from the latest release, into an empty folder:

    mkdir torsher && cd torsher
    curl -fsSL https://github.com/torsher-app/torsher/releases/latest/download/docker-compose.yml -o docker-compose.yml
    
  2. Find your user and group IDs. If they are not both 1000, put them into PUID and PGID in docker-compose.yml:

    id -u && id -g
    
  3. Start Torsher together with Prowlarr, the indexer manager. If you already run a Torznab indexer, docker compose up -d starts Torsher alone:

    docker compose --profile prowlarr up -d
    
  4. Open http://<server-address>:8080/panel/ and create the owner account. The setup wizard asks for Prowlarr's API key: add the indexers you are allowed to use in Prowlarr at http://<server-address>:9696 first.

  5. Install the Torsher app on an LG TV or an Android TV device, or open http://<server-address>:8080/ in a browser. Enter the code from the screen in the panel under Profiles & devices → Connect a device.

The Quick start walks through each step, and Docker Compose explains every line of the install file, several disks and updates.

Platforms

Platform Status
Web browser Available The showcase on any computer, and the control panel on a phone or a computer
LG webOS Developer Mode A thin TV app that plays most files directly on the TV. For now it installs through Developer Mode
Android TV APK The same showcase with a native player. For now it installs from the APK in the release
Apple TV and phones Planned Through apps that already exist for these devices

The server runs on x86-64 Linux, including NAS systems on x86, with arm64 Linux and Docker Desktop on a best-effort basis. See Requirements.

Sources

Torsher does not include, host or index any content, and comes with no sources enabled. You connect the sources yourself, for example any Torznab indexer such as Prowlarr or Jackett, and you are responsible for making sure you are allowed to use them.

The project runs no servers for your content and collects no telemetry. The only request a server makes on the project's behalf is a daily update check against this repository's releases on GitHub, without identifiers; it can be turned off in the panel.

Movie and series information and images come from The Movie Database (TMDB). This product uses the TMDB API but is not endorsed or certified by TMDB.

Contributions

Torsher does not accept external pull requests. Questions and ideas are welcome in Discussions or on r/torsherapp. To report a bug, please open an issue with what you did, what you expected and the file from Download logs under Logs in the panel. Issues are also welcome for release titles Torsher reads wrong and for reports from your hardware: a NAS, an older LG TV or an ARM board.

Build Locally

Instructions for building from source

Prerequisites

  • Node.js 24 and pnpm (corepack enable)
  • Go 1.24+ for the torrent engine
  • ffmpeg and ffprobe for audio and subtitle tracks and remuxing

Install Dependencies

pnpm install

Check

pnpm lint
pnpm typecheck
pnpm test

Development

pnpm dev starts the server, the panel and the showcase with hot reload:

pnpm dev

It builds the torrent engine in engine/ (Go, built on anacrolix/torrent) into the server data folder on start; without Go, the server starts without it. To build the engine separately:

pnpm --filter @torsher/server engine:build

To use a prebuilt binary instead, set ENGINE_PATH in apps/server/.env. Without ffmpeg and ffprobe in PATH (or their paths in FFMPEG_PATH and FFPROBE_PATH), the player plays files directly.

Build

pnpm build builds the showcase and the panel, which the server then serves itself: the showcase at /, the panel at /panel/ and the API at /api.

pnpm build

The Docker image:

docker buildx build --platform linux/arm64 -t torsher:dev --load .

A local build has no TMDB app key: set TMDB_ACCESS_TOKEN or add your own key in the panel. To build with a key, pass it as a build secret:

docker buildx build --secret id=tmdb_app_key,env=TMDB_ACCESS_TOKEN -t torsher:dev --load .

License

AGPL-3.0

Copyright (c) 2026-present, Anton Reshetov.

Explorar proyectos relacionados