MCPSERV.CLUB
Yamtrack

Yamtrack

Self-Hosted

Self-hosted media tracker for movies, shows, anime, games and books

Active(100)
1.4kstars
0views
Updated 1 day ago
Yamtrack screenshot 1
1 / 3

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.yml file 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

  1. Personal Media Library – A solo developer tracks their own collection, syncing with Plex and receiving Discord alerts for new episodes.
  2. Team Collaboration – A small studio maintains a shared list of games and books, with role‑based access control.
  3. Custom Media Management – A niche hobbyist creates bespoke media types (e.g., tabletop RPGs) and integrates with a custom API for automated updates.
  4. 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

Weekly Views

Loading...
Support Us

Featured Project

$30/month

Get maximum visibility with featured placement and special badges

Repository Health

Loading health data...

Information

Category
other
License
AGPL-3.0
Stars
1.4k
Technical Specs
Pricing
Open Source
Database
Multiple
Docker
Community
Supported OS
LinuxDocker
Author
FuzzyGrim
FuzzyGrim
Last Updated
1 day ago