Warning
Initially this was supposed to be a collection of scripts but eventually evolved into Rationarr.
This was created in mind to complement Prowlarr and maximize indexers' usage based on various criterias:
- stop indexers usage when a specific ratio threshold was reached to avoid warnings [not implemented yet]
- trigger notifications if seed items dropped drastically below a specific threshold (ex: client/seedbox stopped or suddently not-connectable anymore from indexer side) [not implemented yet]
- auto use bonuses (*where it applies) to increase the ratio
- nice graphs to see basic indexer stats over time
- other nice features I haven't thought so far ...
Support for indexers is basic so far due to PoC-level, more to come:
- MAM
- HDS
- HHD
- ST
- DP
- generic UNIT3D-based indexer
- docker
- a running and accessible Prowlarr instance
- (optional) FlareSolverr instance (not included by default in base
compose.yml)
Copy .env.template to .env, fill up the required envs and run:
docker compose up -dAs a minimum security the app runs as non-root user 1000:1000.
The rationarr-web container takes care of installing npm modules and properly starting the app.
npm run fix-format for linting
The rationarr-app container takes care of installing pip modules (by building the docker image) and properly starting the app.
alembic upgrade headalembic revision --autogenerate -m 'Migration message'The following command create a separate container for the following:
- rationarr-app - backend API based on FastAPI available on port
:8000 - rationarr-web - frontend NextJS available on port
:5173 - rationarr-db - postgres17
- rationarr-traefik - reverse proxy for backend+frontend to route traffic on backend+frontend on port
:8009- prefferably to use this for dev - rationarr-prowlarr
- rationarr-flaresolverr
docker compose -f compose.yml -f compose.dev.yml up -dThis project is licensed under the AGPL v3.0 License. See the LICENSE file for details.


