Skip to content

Running Locally

Dev server

bash
cd apps/api
python -m app.main
  • Reload is auto-enabled in dev; disabled for packaged runs
  • Set ANIBRIDGE_RELOAD=1 to force reload

Docker dev stack

For the full Sonarr/Radarr/Prowlarr workflow in containers, use the development compose file in watch mode:

bash
docker compose -f docker/compose.dev.yaml up --watch
  • Python source changes under apps/api/app/ are synced into the running AniBridge container.
  • Uvicorn reload picks those changes up without rebuilding the whole image.
  • Changes to apps/api/pyproject.toml, apps/api/uv.lock, apps/api/Dockerfile, docker/entrypoint.sh, VERSION, or apps/api/alembic.ini trigger an AniBridge image rebuild automatically.
  • On Windows/Docker Desktop, shell scripts must use LF line endings. The image normalizes docker/entrypoint.sh during build, and the repo ships .gitattributes rules to keep shell and Docker files on LF.

Envs

Use .env or export vars. See Environment.

When running from source, AniBridge defaults DATA_DIR and DOWNLOAD_DIR to the repository root data/ directory even if you launch it from apps/api/.

Useful curl

bash
curl -sS localhost:8000/health
bash
curl -sS 'http://localhost:8000/torznab/api?t=caps'
bash
curl -sS -X POST localhost:8000/downloader/download \
  -H 'content-type: application/json' \
  -d '{"slug":"your-slug","season":1,"episode":1,"language":"German Dub"}'

Released under the BSD 3 Clause License.