Skip to content
/ watch Public

App for managing the movies and tv shows I'm interested in.

License

Notifications You must be signed in to change notification settings

zordone/watch

Repository files navigation

Watch

This is an app I made to store and manage the list of movies and tv shows I'm interested in. I used to keep this data in a big Google Sheet, but it required way too much manual work, and searching and filtering was very tedious. There are existing solutions for this, but I wanted a UX tailored exactly to my own needs.

Main Features

  • Adding movies and shows by filling a form, or just pasting an IMDb ID.
  • Keeping track of the states: waiting for next season, ready to watch, in progress, etc. Transition between states with a single button press.
  • Easy but powerful search, with keywords.
  • Poster image search (based on Google image search).
  • External links to IMDb, torrent search, subtitle search, trailers, recaps, etc.
  • Keyboard shortcuts for frequently used features.
  • Mobile support.
  • Automatic daily backups.

Screenshots

  • Home page
    Home page
  • Item details
    Item details
  • Item form
    Item form

Architecture

  • Database: MongoDB
  • Server: Node.js Express API
  • Client: React SPA with Material UI

Notes and Disclaimers

  • All components of the architecture are currently locally hosted. I have scripts to run them all on a single Terminal window.
  • All components of the architecture are in the same repository for easy code sharing (in hindsight, this probably wasn't the right decision)
  • No unit tests. Since I am the only developer and user of this app, I didn't see the point.
  • Only tested on the latest Chrome, Safari and Mobile Safari.

Usage

  • Clone the repo
  • Install MongoDB if you don't already have
  • nvm use 14
  • Run npm install
  • Then npm run start-all for development mode.

Scripts

  • Start in development mode:
    1. Start Mongo DB: npm run mongo
    2. Start server: npm run server
    3. Start client: npm start
  • Start all in development mode: npm run start-all
  • Make production build: npm run build
  • Start production build: npm run start-all-prod

About

App for managing the movies and tv shows I'm interested in.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published