proteus63 / Annatar

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Annatar - Lord of Gifts

Annatar is free as in beer. If you are feeling generous I accept donations at Ko-fi.


The fastest just-in-time torrent/debrid search add-on for Stremio providing results in under 2-3s.

Annatar searches torrent and debrid sites for cached content to provide instantly available content for Stremio. Results from Annatar typically arrive in 3s or less. Annatar achieves its speed by using several fanout queries and map-reduce functions to gather the fastest and most accurate results using Jackett APIs.

I created this plugin because I wanted a self-hosted alternative to Torrentio.

The Fastest

There are other plugins that are similar to Annatar, but my experience with them has been not great. Results typically take over 10s which is far from ideal. Annatar is fast enough that the short delay does not bother me. Content is cached using redislite. This includes debrid links, Torrent metadata, and Jackett search results.

Cache is built based on user-requests. Each new imdb id will be cold requested from Jackett, Cinemeta, and Debrid. Subsequent requests will retrieve cache (given some TTLs depending on arbitrary logic).

FREE Community Edition

Although I wrote Annatar to be self-hosted it is also available as a Community Edition thanks to sponsorship from https://elfhosted.com. If you want to customize Annatar but you can't self-host you can easily get your own instance with just a few clicks.

Running Locally

⚠️ It is important to note that the indexers you choose to search are what determines the cold speed of Annatar results. Those listed in the image below are the ones that I have had the best experience with and also provide results for almost everything I search. choose your indexers carefully. If you aren't sure which ones are fast/slow then add one and use the Manual Search button in Jackett and set the indexer in the query. If the results take forever then that's a slow indexer. ⚠️

Annatar must be accessible by Stremio via HTTPS. Run it on a desktop, VM, or server somewhere that your Stremio apps can reach it. You will need HTTPS otherwise Stremio will not install the plugin. See #1 for comments.

Annatar does not import certificates. You will likely need a reverse proxy such as nginx or Caddy. See #1 comments for an nginx example.

If You Already Have Jackett

docker run -d -p 8000:8000 -v ./annatar-data:/app/data --name annatar \
	-e JACKETT_URL=<your jackett URL> \
	-e JACKETT_API_KEY=<your jackett api key> \
	-e JACKETT_INDEXERS=eztv,kickasstorrents-ws,thepiratebay,therarbg,torrentgalaxy,yts \
	registry.gitlab.com/stremio-add-ons/annatar:latest

If you don't already have Jackett

# create a working directory
mkdir -p annatar
cd annatar
# Download the docker-compose
curl -LJO https://gitlab.com/stremio-add-ons/annatar/-/raw/master/docker-compose.yaml
docker-compose up -d jackett

Open http://localhost:9117 and add some indexers. I recommend the ones pictured below for almost all TV and Movies. They are the fastest providers. If someone wants to suggest others open a PR (i.e. anime indexers).

Edit docker-compose.yaml and paste your API key under annatar -> env -> JACKETT_API_KEY

Run Annatar. docker-compose up -d

Install the add-on to Stremio:

  1. Open http://<host>:8000/configure on a machine that has Stremio installed

  2. Type in your details and click Install

  3. This will launch the plugin the Stremio app.

This is not Torrentio

Torrentio provides instant results because it uses a crawler to cache content from indexers. All searches against the Torrentio add-on yield results from cached content. While this provides instant results it comes at a cost. Sometimes that cost is downtime, but it also means that Torrentio caches much more than I need or care to know about. Also, because of this added complexity it is non-trivial to self-host Torrentio.

FAQ

  • Q: Annatar is slow
    • A: It's possible you are using slow indexers. Open Jackett directly and search individual indexers and see which one returns slowly. Disable that indexer if it is slow or be patient and wait for the cache to build
  • Q: Can you add support for <debrid provider>
    • A: Yes. Vote for an existing issue or create a new one to request it. I'll do what I can
  • Q: What is Annatar
    • A: Annatar - Lord of Gifts was the guise that Sauron assumed during the Second Age of Middle Earth.
  • Q: Can you add support for download-to-debrid links
    • A: No. Annatar is exclusively for instantly available content found on supported debrid services.
  • Q: Can you add support for torrent streaming?
    • A: No. Annatar is exclusively for instantly available content found on supported debrid services.

Contributing/Development

This plugin is implemented in python using the Stremio protocol definition.


DISCLAIMER: This software does not interact with torrent protocols, nor does it download or stream any content whatsoever. It is a Stremio plugin that provides only metadata and links by searching torrent indexers for content and searching Debrid services. Interacting with torrent indexers may be illegal in your country.

About


Languages

Language:Python 93.3%Language:Jinja 2.9%Language:Makefile 1.4%Language:Shell 1.3%Language:JavaScript 1.2%