KouroshKSH / CS-Course-Graph

This repository is for creating an Obsidian graph that connects the Computer Science courses offered at Sabanci University. It is a combination of a web scraper written by Arya Hassibi, and a script for creating markdown notes by me.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CS-Course-Graph

This repository creates an Obsidian graph that connects the Computer Science courses offered at Sabanci University. The project is a combination of a web scraper written by Arya Hassibi, and a script for creating markdown files by me.


Goal

Ours main aim of doing this was to assist the undergraduate Sabanci students, and make the process of choosing their CS courses easier. A visual representation of all courses can greatly help anyone to plan accordingly, and avoid any unnecessary hassle later on.


How it Works

First, the courses and their related information were scraped from this website by Arya using Beautiful Soup. He then cleaned them, and divided the data gathered in to 5 main sections:

  1. Course name & its code
  2. Prerequisite
  3. Corequisite
  4. ECTS Credit
  5. General Requirements

Later, the database was uploaded to a Google Sheets file, which was used by me to download them as a CSV file. After that, using mdutils, I generated markdown files that were formatted in such a way that could be used by Obsidian to index them appropriately (i.e. Backlinks).

As a result, one can traverse the global/local graph(s) made automatically by Obsidian to see the interconnections between the CS courses, and find the required courses to take for a specific class, or to see what options can be unlocked after finishing that course.


Contributions

Feel free to contribute to this project, modify code, or offer feedback regarding the codes written.

About

This repository is for creating an Obsidian graph that connects the Computer Science courses offered at Sabanci University. It is a combination of a web scraper written by Arya Hassibi, and a script for creating markdown notes by me.

License:MIT License


Languages

Language:Python 100.0%