← Projects
active

Personal Media Repository

A poster-grid web app that catalogs my personal media library and shows what's on the wishlist, accessible from any device on my home network.

April 2026
  • Web
  • React
  • Express
  • Self-Hosted
  • For Fun

A web app I run on my home server to manage my personal media library. Movies, TV shows, music, and books each get their own tab with a poster grid. Wishlisted titles and items I already own sit in the same view, separated only by a small status badge.

Vibecoded with Claude Code over a couple of weekends. Vite and React on the frontend, Express with PM2 on the backend. It integrates with Jellyfin for playback links, Jellyseerr for download requests, Lidarr for music, Readarr for books, and TMDB for posters and metadata. The whole thing is served over Tailscale so I can use it from any of my devices without exposing it to the public internet.

The catalogue and per-title metadata (ratings, last-watched flags, comments) sync across devices through a small JSON-file backend that polls every 30 seconds. So if I add a movie to my wishlist on my laptop, it shows up on my phone before I close the tab.

Self-hosted, single-user, very obviously over-engineered for a one-person tool. That was the point. I wanted the same browsing experience as Netflix or Plex, but for the actual catalogue I care about.