Skip to content

A web-app designed to help NYU students in the course registration process.

Notifications You must be signed in to change notification settings

guptaviha/NYU-Course-Buddy

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

89 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NYU-Course-Buddy

An academic project for Cloud Computing (CS-GY-9233) at NYU Tandon with Prof Sambit Sahu.

NYU Course Buddy is a web-app designed to help NYU students in the course registration process.

Project Description and Motivation:

Every NYU student can relate with the struggle of registering for their desired classes. Often courses are full within seconds, leaving students grappling for courses they don’t wish to take. At the end, it is up to these students to find others who are interested in swapping the particular pair of courses they have with the ones they want. Another way students can register for a course is when someone else drops it. But the challenge is finding out when a course has become available. The students have to look at quite a few different places to find reviews about the subjects as well. The existing tools out there, i.e. Coursicle, RateMyProfessor, etc offer some relief but at a cost and are not consolidated as one solution.

Existing Products:

Product Features:

We propose a web application that facilities our NYU students in the class registration process. It will have the following features:

  1. A complete list of all the courses being offered for the current semester.
  2. Ability to add courses to the user’s wishlist.
  3. When a course that is in the wishlist becomes available, a notification will be sent to the user's email.
  4. Ability to view and add new reviews/ratings for a particular course.
  5. A dashboard for a high level view on course trends. For example, live charts/analytics for hot subjects and course ratings.
  6. A smart chatbot through which users can query for various use cases like Open Courses, Trending Courses, etc

Data Source:

Schedge - Albert course listing API

"Schedge is a program that scrapes Albert, then provides a simple API for course data. You can query course data from different semesters with all the corresponding meeting times and recitations."

Architecture:

Architecture

For design and prototype using Figma click here

  1. AWS Services
  2. Hosting on S3
  3. User Authentication and Security using Cognito and IAM
  4. APIs on API Gateway
  5. Backed for APIs on Lambda
  6. Databases: RDS
  7. Indexing ElasticSearch
  8. Chatbot on Lex
  9. Notifications using SES
  10. Polling with EventBridge + Lambda
  11. Queue user notifications with SQS

Contributors:

Bharath Syed Ahmad Purva Kondaji Viha Gupta

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 39.5%
  • CSS 37.7%
  • HTML 9.3%
  • Python 9.1%
  • Shell 4.4%