Overview
Discover what makes Yamtrack powerful
Yamtrack is a fully‑self‑hosted media tracking platform that unifies the management of movies, TV shows, anime, manga, games, books, and comics into a single, extensible web service. Built on Django 3.x with a React/Redux front‑end, it exposes a robust REST API that can be consumed by third‑party clients or integrated into existing media servers. The application is designed for developers who need a lightweight, opinionated solution that can be deployed behind a reverse proxy and scaled horizontally via container orchestration.
Multi‑media tracking
Dynamic list creation
Calendar integration
Social authentication
Overview
Yamtrack is a fully‑self‑hosted media tracking platform that unifies the management of movies, TV shows, anime, manga, games, books, and comics into a single, extensible web service. Built on Django 3.x with a React/Redux front‑end, it exposes a robust REST API that can be consumed by third‑party clients or integrated into existing media servers. The application is designed for developers who need a lightweight, opinionated solution that can be deployed behind a reverse proxy and scaled horizontally via container orchestration.
Key Features
- Multi‑media tracking with per‑season episode progress, custom scoring, and repeat metrics.
- Dynamic list creation and collaboration, backed by PostgreSQL or SQLite for persistence.
- Calendar integration through iCal feeds and real‑time release notifications via Apprise (Discord, Slack, email, etc.).
- Social authentication powered by django‑allauth, supporting OIDC and 100+ providers.
- Media server hooks (Jellyfin, Plex, Emby) that auto‑record watched items through webhooks or API polling.
- Import/export pipelines for Trakt, Simkl, MyAnimeList, AniList, and Kitsu with cron‑driven sync jobs.
Technical Stack
- Backend: Django 3.x, DRF (Django REST Framework), Celery for background jobs.
- Frontend: React 18 with Redux Toolkit, TailwindCSS for styling.
- Database: PostgreSQL (recommended) or SQLite for lightweight deployments.
- Containerization: Docker images built on
python:3.10-slim, orchestrated via docker‑compose with optional PostgreSQL service. - Messaging: Redis as broker for Celery; optional RabbitMQ for high‑throughput scenarios.
- Notifications: Apprise library with plug‑in adapters for Discord, Telegram, Slack, email, and more.
- Auth: django‑allauth with configurable OIDC endpoints and social providers.
Architecture
Yamtrack follows a classic MVC pattern: the Django ORM models represent media entities, DRF serializers expose them as JSON resources, and React components consume the API. Celery workers handle long‑running tasks such as media import, webhook processing, and notification dispatching. The front‑end communicates over HTTPS via JSON Web Tokens (JWT) issued by Django’s authentication backend. The application is stateless, allowing multiple instances to share a common PostgreSQL database and Redis broker, making it suitable for Kubernetes deployments.
Deployment & Infrastructure
- Docker: A single
docker‑compose.ymlfile brings up the web service, database, and Redis broker. - Scalability: Because the app is stateless, horizontal scaling can be achieved by adding more web replicas behind a load balancer.
- Persistence: PostgreSQL is the preferred backend for production due to ACID guarantees; SQLite suffices for hobby or testing environments.
- CI/CD: GitHub Actions automate tests, code quality checks (CodeFactor), and image publishing.
- Observability: Logs are forwarded to the host’s stdout; integration with Prometheus/Grafana is possible via custom metrics.
Integration & Extensibility
Yamtrack exposes a RESTful API with endpoints for media CRUD, list management, and user preferences. Developers can hook into the webhook system to trigger actions on media events (e.g., “episode watched”). The plugin architecture allows adding new media providers or custom authentication backends by extending Django apps. For advanced use cases, the Celery beat schedule can be modified to run custom sync jobs or analytics pipelines.
Developer Experience
- Configuration: Environment variables control database URLs, secret keys, and third‑party API credentials.
- Documentation: The repository includes comprehensive READMEs, API docs generated via DRF’s schema view, and a developer guide for extending the app.
- Community: Active issue tracker on GitHub, with contributors adding new features such as additional media providers or improved UI components.
- Licensing: AGPL‑3.0 ensures that any derivative work remains open, encouraging community contributions.
Use Cases
- Personal Media Library – A solo developer tracks their own collection, syncing with Plex and receiving Discord alerts for new episodes.
- Team Collaboration – A small studio maintains a shared list of games and books, with role‑based access control.
- Custom Media Management – A niche hobbyist creates bespoke media types (e.g., tabletop RPGs) and integrates with a custom API for automated updates.
- Enterprise Media Tracking – An organization uses Yamtrack to monitor employee consumption of training videos and e‑books, generating compliance reports.
Advantages
- Full Control: Self‑hosted nature removes reliance on third‑party services and protects user data.
- Extensibility: Django’s modularity makes adding new media providers or authentication methods straightforward.
- Performance: PostgreSQL + Redis + Celery deliver responsive API calls and efficient background processing.
- Community‑Driven: Active development ensures timely security patches and feature updates.
- License Flexibility: AGPL guarantees that improvements are shared, aligning with open‑source principles.
Yamtrack offers developers a feature‑rich, self‑hosted media tracker that balances ease of deployment
Open SourceReady to get started?
Join the community and start self-hosting Yamtrack today
Related Apps in other
Immich
Self‑hosted photo and video manager
Syncthing
Peer‑to‑peer file sync, no central server
Strapi
Open-source headless CMS for modern developers
reveal.js
Create stunning web‑based presentations with HTML, CSS and JavaScript
Stirling-PDF
Local web PDF editor with split, merge, convert and more
MinIO
Fast, S3-compatible object storage for AI and analytics
Weekly Views
Repository Health
Information
Explore More Apps
Mastodon
Decentralized, real‑time social networking
Chartbrew
Build interactive dashboards from any data source
DragonFly
Self-hosted apis-services
S-Cart
Free Laravel-powered eCommerce platform
Fenrus
Custom personal homepage and new tab dashboard
Hoppscotch
Fast, lightweight API development tool
