StremThru Documentation
repository·main·Indexed 17 days ago
https://github.com/muniftanjim/stremthruA companion service for Stremio that acts as a proxy and interface for various debrid and content stores, including AllDebrid, RealDebrid, and PikPak. It provides features such as HTTP(S) proxying, proxy authorization, and byte serving. StremThru includes JavaScript and Python SDKs for integration, as well as a Golang implementation of the Stremio watched bitfield logic.
What's inside StremThru
- StremThru is a companion service for Stremio that functions as an HTTP(S) proxy with authorization. It provides a unified API for interacting with various debrid stores, supports content proxying with byte serving, and includes a suite of specialized Stremio addons.
Overview of StremThru available integrations
mainStremThru supports several external service integrations for content metadata, list management, and ID mapping. Integrations vary in their authentication requirements, ranging from no authentication required to OAuth apps or Personal Access Tokens.
| Integration | Used By | Auth Required | | -------------------------- | ----------------------------- | --------------------- | | [AniList](./anilist) | List addon | No | | [GitHub](./github) | Various | Personal Access Token | | [Letterboxd](./letterboxd) | List addon | No | | [MDBList](./mdblist) | List addon | No | | [Serializd](./serializd) | List addon | No (requires TMDB) | | [TMDB](./tmdb) | List addon, ID mapping | Access Token | | [TVDB](./tvdb) | List addon, ID mapping | API Key | | [Trakt](./trakt) | List addon, Dashboard - Vault | OAuth App |Overview of StremThru
mainStremThru is a companion service for Stremio designed to act as an interface for various content stores. It provides core features such as HTTP(S) Proxying, Proxy Authorization, and Byte Serving to facilitate content access. It supports a wide range of debrid/store services and provides SDKs for JavaScript and Python to integrate its capabilities into other applications.Overview of StremThru features
mainStremThru is a self-hosted companion service for Stremio that unifies various media streaming and management tools. Key capabilities include:
- Store Integrations: Unified API access to 10 debrid services (AllDebrid, Debrider, Debrid-Link, EasyDebrid, Offcloud, PikPak, Premiumize, RealDebrid, TorBox, and Torrin).
- Stremio Addons: Built-in addons including
Store,Wrap,Torz,Newz, andList, plus theSidekicktool. - Torrent & Usenet Support: Background sync, crowdsourced data, and support for Torznab/Newznab indexers, multi-debrid integration, and streaming over NNTP/SABnzbd/WebDAV.
- Content Proxy: Proxy content from stores with byte serving support and HTTP(S) proxy tunneling.
- Unified API: RESTful API for
Store,Proxy,Torz,Newz, andMeta. It provides Torznab and Newznab compatible endpoints for integration with tools like Prowlarr, Radarr, and Sonarr. - Dashboard: A built-in web interface to manage stores, addons, torrent/usenet settings, sync jobs, and the vault.
- External Integrations: Connects with AniList, Letterboxd, MDBList, TMDB, TVDB, and Trakt.
- SDKs: Official JavaScript and Python SDKs for programmatic integration.
Overview of stremio_watched_bitfield
mainThestremio_watched_bitfieldpackage is a Golang implementation of the Stremio watched bitfield logic. It is used to manage and process the bitfield that tracks which content a user has watched in Stremio. This implementation is compatible with the logic used in the official Stremio JavaScript and Rust implementations.Features of StremThru Newz
mainStremThru Newz supports the following features:
Supported Indexers
- Generic Newznab: Standard Newznab indexer integration.
- StremThru: The built-in StremThru aggregator.
- Torbox: Integration with Torbox.
Capabilities
- NNTP Streaming: Direct streaming of NNTP content.
- Debrid support: Integration with Debrid services for enhanced streaming capabilities.
Features of the Wrap addon
mainThe Wrap addon provides several enhancement features for Stremio addons:
- Aggregation: Combine multiple addons into a single addon.
- Filtering/Sorting: Unified Filter and Sort capabilities.
- Extensibility: Support for Extractors and Templates.
- Proxying: Content proxying using StremThru.
- Debrid Integration:
- Add debrid support to P2P stream addons.
- Reconfigure debrid service for debrid stream addons.
- Customization: Support for custom posters (e.g., RPDB).
- Storage: Multi-Store support.
Available StremThru SDKs
mainStremThru provides official SDKs for JavaScript and Python to facilitate integration with its services. You can find the respective packages on npm and PyPI.
| SDK | Package | | -------------------------- | ------------------------------------------------------ | | [JavaScript](./javascript) | [`stremthru`](https://www.npmjs.com/package/stremthru) | | [Python](./python) | [`stremthru`](https://pypi.org/project/stremthru/) |Manage Stremio addons and library items with Sidekick
mainThe Sidekick interface allows you to perform the following management tasks:
Addon Management
- Account Management: Manage Stremio accounts.
- Enable/Disable: Toggle addons on or off.
- Install/Uninstall: Add or remove addons from your setup.
- Organization: Modify and reorder the list of installed addons.
- Data Safety: Backup, restore, or reset your addon configurations.
Library Management
- Data Safety: Backup, restore, or reset your library items.
Use Expr language for Stream Filter expressions
mainStremThru uses the Expr programming language to define stream filters. You can write logical expressions to include or exclude specific streams based on metadata fields like resolution, quality, or store availability.Access Newz and Torz endpoints
mainThe Store API is divided into specialized endpoint groups for different media types:
- Newz (Usenet): All endpoints are prefixed with
/v0/store/newz/*. - Torz (Torrent): All endpoints are prefixed with
/v0/store/torz/*.
Refer to the specific Newz and Torz API documentation for detailed endpoint definitions.
- Newz (Usenet): All endpoints are prefixed with
How `newz` and `vault` feature interactions work
mainWhen both the
newz(Usenet support) andvault(Vault for encrypted secrets) features are enabled simultaneously, StremThru unlocks advanced Usenet capabilities:- Indexer Management: Add and manage Newznab indexers for newznab aggregation.
- Server Management: Configure Usenet servers for downloading/streaming.
- SABnzbd Endpoint: Provides a SABnzbd-compatible API for integration with tools like Sonarr or Radarr.
- WebDAV Endpoint: Allows you to browse and stream Newz content via WebDAV.