All projects

Film Arşivim

A personal movie archive with TMDB integration: queue-based bulk import and personal recommendations.

2026
  • Laravel
  • PHP
  • TMDB API
  • Queues
  • Alpine.js
  • Tailwind CSS

Problem

Jotting down watched movies is easy; archiving them with rich metadata, combining that with a watchlist and importing hundreds of titles in one go is not. Manual data entry doesn't scale: looking up the poster, director, runtime and rating for every single film kills the archiving habit.

Solution

Film Arşivim is a personal movie management system with TMDB integration. Type a title and the poster, director, overview and runtime arrive automatically; personal ratings, a watchlist and statistics live on one platform. The most critical piece is queue-based bulk import — hundreds of titles pasted at once, processed item by item in the background, with live progress and an error report.

Approach

  • Asynchronous batch import: every title is its own queue job (tries: 3, timeout: 45); batches are cancellable and status transitions are idempotent — running a job twice can't corrupt data.
  • Smart matching: free-text queries resolve to the best TMDB hit via smart search; not-found and duplicate entries land in the report instead of disappearing silently.
  • Relational design: users, movies, batches, collections and activity are separate models; statistics (total watch time, top movie) are derived from queries.
  • Server rendering + light interactivity: Blade + Alpine.js; real-time search and progress tracking without a heavy SPA framework.
0%