Entertainment

Movie and TV Series Watchlist with a Node.js API

A full-stack watchlist app for browsing popular movies and TV series and bookmarking titles to watch later.

Home page with trending and recommended TV series

Overview

Entertainment is a full-stack web application for browsing popular movies and TV series and building a personal watchlist. Users create an account, explore trending and recommended titles, search the catalog, and bookmark the movies and series they want to watch later. The frontend is built with React and TypeScript, and the backend is a REST API built with Express and MongoDB.

The problem

Movies and series to watch are often scattered across notes, screenshots, and streaming apps. Without a single place to collect them, it is easy to forget recommendations or lose track of titles you planned to watch.

The solution

Entertainment brings a catalog of popular movies and TV series into one interface. Users can browse by category, search instantly, open detail pages, and save titles to a personal bookmarks list tied to their account.

Key features

Tech stack

Technical implementation

Challenges & engineering decisions

Results & lessons learned

Results

Built a working full-stack watchlist application that combines a React and TypeScript client with an Express and MongoDB API, user authentication, search, and personal bookmarks.

Lessons learned

  • Splitting an Express API into routes, controllers, models, and middleware keeps it easy to extend.
  • A polymorphic reference can let one model serve several content types instead of duplicating logic.
  • Authentication has to be handled on both sides: middleware protects the API, and the client must react cleanly when a session expires.
  • Optimistic updates make an interface feel instant, as long as the cache is resynced with the server afterwards.