Inspiration

We looked at websites like Goodreads and Letterboxd and wanted to make a similar site for tv shows. While these exist, they can be annoying to use, and we wanted to make an alternative.

What it does

Our website aggregates television show recommendations from websites that publish lists of shows worth watching.

How we built it

We started with a basic html and css format for a container to represent a recommended show, which could be continuously append as a child in the <main> of the site. We went on to build the client side JavaScript to add a new container from show information from a json file. We built an api using flask which could feed show information to the clientside javascript. We refined the frontend and design artwork to create a good looking website and to continuously load shows as the user scrolled down. We then used a webscraper on this Paste Magazine's article to collect a list of shows to recommend. We found an API here which could give our API information about the shows we found, and stored the shows and their related ids in TheMovieDatabase in a json which our project loads and makes requests for the title, genre, summary and poster using a random id from the list.

Challenges we ran into

We spent much of the project planning to use Trakt's API, however we ran into issues with their authentication method, where the link to get an authentication code would not work. Finally, we decided to use TMDB's API, which we were already going to use to get the show's corresponding image/poster. However, you could only access the API through the site's corresponding ID number for each show, but there was no way to get the ID using the title of the show. We ended up manually inputting the ID for each show in our data file, as the site currently just uses a small data subset.

Accomplishments that we're proud of

  • Our T(V)-Rex dinosaur is very cute. -all
  • I'm really proud of how we were able to use the TMDB API to get a lot of the information about the show, especially for the images so we didn't have to worry about hosting them on the backend. -Tessa
  • I'm very proud of the server and our in house API, I haven't built anything like that before and when I finally got it working I was over the moon. -Andrew
  • I'm really proud that I was able to learn how to use html and CSS to build the front-end and make the website little bit more prettier. I was also able to pick up my drawing pen again to design a logo. -LeeAnn

What we learned

None of us had much experience with web development and APIs, so we had to learn a lot to make our website. Especially Flask specifically was new to all of us, (as was just about every web framework).

What's next for TV Rex

There are many things we wanted to include within our website that we didn't end up having time for. Obviously, the first step would be to develop the page for movie recommendations (which would be relatively simple due to the similarity to the tv show page). We would also scrape more articles for recommendations (currently all the recommendations come from one Paste Magazine article), as well as add genre filters so you would only get shows from a desired genre.

About Us

We are all freshmen majoring in computer science.

Share this project:

Updates