Movies page live!

Last month I added listens and bookshelf pages to this site. I wanted to add a movies page too, but procrastinated at the time due to inconsistent and messy data.

On Friday, August 7, 2026, I watched Spider-Man: Brand New Day. The next day while scrolling through feed entries on Miniflux, I found Rishabh’s entry for the same movie.

Seeing that entry, the cute Oneko cat moving around his site, and a bored me on a lazy Saturday, I finally got the energy to take on the time taking process of gathering all the data I needed for my own movies page.

The very first thing I did was to add the bird to my site. I had previously implemented it, but held off deploying it, thinking I’d add an enable/disable toggle first. I made sure to respect prefers-reduced-motion to hide the bird for users who prefer it that way.

I then rolled my sleeves up and started working on the movies page. The page layout is a copy of the bookshelf page, but cleaning up the data took the entire evening.

Since around 2022, I’d been maintaining a movies note in Google Keep using a simple workflow:

  1. Look up the movie on Google.
  2. Copy the movie info exactly as it’s shown and paste it into the note.
    E.g., searching for Spider-Man: Brand New Day gives:
    Spider-Man: Brand New Day
    2026 ‧ Action/Adventure ‧ 2h 25m

Over time, this note became a shared list where my friends would add their recommendations for me. 90%+ of the Telugu movies and anime I watched were recommendations from friends. These days, I get most of my recommendations from Instagram, Twitter, and YouTube Shorts.

Towards the end of college, I moved this note to a spreadsheet. I tracked the Title, Year Released, Started Watching, Done Watching, Language, and Duration fields.

As of today, the sheet has 300+ rows of movies and series I’ve either watched or plan to watch. I had to decide which rows should actually end up on the site. Ideally, if a movie had a “Done Watching” date, it would be visible. But, most of the movies migrated from Keep to Sheets didn’t have a completion date since I hadn’t tracked that originally.

So, I went through each row manually, marking whether it should be included based on if I remembered watching it or if it already had a watch date. Lucky for me, whenever I finished a movie recommended by someone, I texted them that I had watched it. What also helped was my philosophy of never clearing WhatsApp chats and always using “canonical” movie names with correct spellings (ocdmaxxing). This helped me find done dates all the way back to 2020. It was a slow and tedious process.

Even with the chat history, I couldn’t find the exact completion date for everything. Sometimes I had texted that I started watching, and later chats about my thoughts on the movie could have been sent on the day I watched it, or days later when asked about it. Those movies, and the movies never mentioned in chats, remain without a finish date.

After filling in all the dates I could find, I had to find the movie posters. I first tried manually using images from IMDb, but it was hard and slow. Then I turned to the OMDb API. Their landing page has a form hooked up to a demo API key with relaxed rate limits. I didn’t encounter a single error when manually searching movie info rapidly. The API response provided a poster URL, which I just hotlinked on the site.

After doing this manually for a couple of movies, I copied the request from Firefox as a cURL command and wrote a bash script to send the request and output the poster link. This worked for most of the list, and the posters were good enough for my usage. For the ones it couldn’t find, or where posters weren’t to my liking, I manually went to IMDb and got the poster link through DevTools.

And that’s how the movies page came to be.