Skip to main content

MTVL: Modular Media & Literature Tracking Platform

MTVL (Media Tracking & Virtual Lists) is an extensible, high-performance tracking platform built in Go and React 19. It allows individuals and communities to catalog, monitor, and rate media across diverse domains including movies, TV shows, books, anime, manga, and video games.

Core Architecture Highlights

1. Dual-Tier Data Model (Public Catalogs + Personal Lists)

MTVL cleanly decouples shared catalog data from individual user tracking states:
  • Public Catalogs: Shared global repository of media items (e.g., Inception, Breaking Bad, Dune). Anyone can browse, search, and discover items without authentication.
  • Personal Tracking Lists: Authenticated users add catalog items to their private tracking lists, recording custom statuses (e.g. Watching, Completed, Plan to Watch), episode/page counts, personal scores, and private notes.

2. Extensible Category Module System

Every category (movies, TV shows, books, etc.) is implemented as a standalone Go module conforming to the core.CategoryModule interface. New categories can be generated in seconds using the built-in CLI generator:

3. Multi-Database Architecture & Neon Serverless Postgres

Driven by Goose SQL migrations, MTVL supports PostgreSQL, MySQL, and SQLite. For modern cloud deployments, MTVL is natively optimized for Neon Serverless Postgres, supporting auto-scaling compute, connection pooling, branch workflows, and SSL encryption.

4. Pluggable Authentication

The backend features an abstract auth.AuthProvider interface with:
  • Built-in JWT Authentication: Native user registration, login, bcrypt password hashing, and API personal access token management.
  • External Auth Adapter: Drop-in compatibility with OpenID Connect (OIDC), Clerk, Auth0, Supabase, or Keycloak.

Ecosystem Components


  • 📱 MTVL App User Guide: Learn how to browse catalogs, manage lists, track reading/watching progress, and manage API keys.
  • 🔌 MTVL REST API Reference: Detailed documentation of all API routes, parameters, request/response bodies, and code examples.
  • 🛠️ Developer Guide: Architectural deep-dive, adding custom modules, pluggable auth providers, and frontend extensions.
  • ⚡ Neon Postgres Setup: Step-by-step guide to setting up and optimizing Neon Serverless Postgres for MTVL.