Improved UBC Transcript

What it does:

Beautifies the lacking unofficial UBC transcript with extra information and better formatting.

How it does this:

It does this in several ways:

  • Adding a course names columns
  • Removing unnecessary widgets
  • Spacing items out better and increasing the width of the table
  • Allow you to manually edit course names
  • Optionally allow you to remove unnecessary columns + rows

Instructions

  1. Go to this page check that the API status is ONLINE and drag the bookmarklet onto your bookmarks bar

    NOTE: This bookmarklet works best with Google Chrome and hasn't been tested with other browsers!

  2. Navigate to the SSC grades page

  3. Click on the bookmarklet to run it

    It might take the server some time to boot up the first time you run it.

How it works

There are two main components that make up the UBC Transcript Beautifier

Bookmarklet (Client-Side)

There is the client side (On the user's browser) bookmarklet that is responsible for:
  • Scanning the courses table and extracting the course codes
  • Style the courses table to include a course names column and various other improvements
  • Sending the extracted course codes to the "Server"
  • Recieve the associated course names for each course code and fill in the table

Server

There is a web server that is responsible for:
  • Storing information about UBC courses, primarily which course codes map to which course names
  • Responding to requests (for course names) from the "Client"
NOTE: Right now, the "Server" is deployed on AWS Lambda and is technically using the Serverless framework

Scraping

There is a technically a third component to the system, and this is the periodic web scraping of the UBC website, to keep the course information updated on the "Server".

Source Code

Github