Built with: Wisdom Akpan, Micah Nacht, Simon Bilsky-Rollins


Existing software for browsing course offerings and planning a schedule are insufficient. The system allows you to formulate targeted searches for specific courses, but is not well suited for exploration and discovery. It is difficult to save courses of interest, and determine whether or not they conflict. We wanted to make some better tools- and make them open-source/hackable so students could continue adding features they want to see over time.

What it is

CRAP@Carleton currently comprises two components.

  1. The first portion scrapes data from the existing course planning website, and puts it into a MongoDB database, and serves it over a restfulAPI.

  2. The other portion uses the API to create an interactive web app (built with React), where students can browse courses in a flexible way, save the ones they're interested in, then choose an ideal schedule from their saved items.

Challenges I ran into

Learning React...

Accomplishments that I'm proud of

Learing ScraPy!

What's next for CRAP@Carleton

Many more features are possible, especially related to storing/analyzing more data. These include:

  • Storing user accounts, so the system can tailor searches to fulfilled/needed requirements
  • A course rating system
  • A course recommender system (ie, 'students who took/liked this also took/liked this')
  • Ability to auto-generate viable course schedules from saved courses according to custom parameters, like 'maximize sleep in' or 'minimum-walking distance'

Built With

Share this project: