
Deploy watcharr
A self-hosted, open-source media tracker for movies, TV shows and games.
watcharr
Just deployed
/data
Deploy and Host Watcharr on Railway
About Hosting
Watcharr is a self-hosted, open-source media tracking application for movies, TV shows, anime, and optionally video games. It features a modern SvelteKit frontend with a Go (Gin) backend, TMDB-powered search and metadata, watch status tracking with ratings and thoughts, activity feeds, user follows, and integrations with Jellyfin, Plex, Sonarr, and Radarr.
Watcharr runs as a single Docker container with two internal processes: a Go binary serving the API and reverse-proxying to an internal Node.js SvelteKit frontend. It uses SQLite for storage — no external database is required. All persistent data (database, config, images, logs) lives under a single /data volume.
Why Deploy
- All-in-one media tracker — Track movies, TV shows, anime, and games in a single, unified interface with TMDB metadata.
- Zero external dependencies — Built-in SQLite database; no Postgres, MySQL, or Redis services needed.
- Rich integrations — Authenticate via Jellyfin or Plex, request media through Sonarr/Radarr, and optionally track games via IGDB.
- Social features — Activity feeds, user follows, and shared watchlists make it fun for households or friend groups.
- Privacy-first — Your watch history and ratings stay on your own infrastructure.
Common Use Cases
- Personal watchlist management — Track what you've watched, are watching, or plan to watch across movies, TV, and anime.
- Household media tracking — Multiple users can each maintain their own watchlists with follow and activity feed features.
- Media server companion — Pair with Jellyfin or Plex for authentication and with Sonarr/Radarr for one-click media requests.
- Anime tracking — Dedicated anime support with per-episode tracking and season management.
- Game library tracking — Optionally enable IGDB integration to track video game backlogs alongside media.
Dependencies for Deployment
Deployment Dependencies
| Dependency | Details |
|---|---|
| Docker Image | ghcr.io/sbondco/watcharr:latest — pre-built image from GitHub Container Registry |
| Exposed Port | 3080 (Go backend serves both API and proxied SvelteKit frontend) |
| Persistent Volume | Mount at /data — required for SQLite database, config, uploaded images, and logs |
WATCHARR_DATA | Optional — override data directory path (defaults to /data in the container) |
| External Database | None — uses embedded SQLite at /data/watcharr.db |
| First-Run Setup | The first registered account automatically becomes admin; watcharr.json config with JWT secret is auto-generated on first startup |
Template Content
watcharr
ghcr.io/sbondco/watcharr:latest