Skip to content

Emile-Jn/curriculum-planner

Repository files navigation

Curriculum planner

A web app to view and select courses from the Data Science master's curriculum, which automatically checks completion of the different requirements.
This app was created mainly because the rules for graduation requirements for the data science master's are complicated and somewhat ambiguous, and students often make mistakes when initially planning their curriculum.

Web app available here.

Features

  • Create a layout of planned semesters.
  • Fill in the semesters by searching for courses by course code or title.
  • Add and remove any course or semester at any time.
  • The graduation requirements on the right of the screen are automatically up-to-date.
  • Selected courses are automatically saved to local storage (usually disappears after a few days).
  • Export your course selection to a JSON file with the 'Export courses' button.
  • Import a JSON file that was previously exported from this app with the 'Import courses' button.
  • All courses in the transferable skills catalogue are available as part of the curriculum.
  • Courses that are not currently available in Tiss (because they were canceled, or because the lecture team still needs to create the Tiss page for the current semester) appear with a warning as the last search results.
  • Add any course which is not (or no longer) in the data science curriculum with the 'other course' button. This can also be a course from another university, but make sure it officially belongs to the module you select.
  • Manually added courses are automatically added to the curriculum and behave like other courses, meaning that they can count towards any requirement, including cores. This is particularly useful for people who took a core course which is no longer offered but is still valid for graduation.
  • Get guidance on how to choose courses with the 'Help' button.
  • The curriculum is updated every day by fetching the result of the scraping repo

Contributions

Pull requests, feedback or bug reports are welcome.
This web app is written in Vue, using the Options API (sometimes maybe the Composition API, unintentionally) but a lot of the code is very similar or the same as regular HTML, Javascript and CSS, so you can modify a lot of things without knowing anything about Vue. If you know the basics of web development, learning the basics of Vue is pretty quick, see the start guide here.To modify the app, edit one of the Vue components (.vue files) or add a new one in /src.

Notes

  • Some courses, like Information Visualisation, or Interdisciplinary Lecture Series in Data Science, are offered in both winter and summer, with different course codes, but they are the same course.
  • When adding a new course, specifying a course code is optional, but if nothing is entered, a random 6-digit code will be generated, so that the course can still be identified in the system.

Assumptions:

If these assumptions don't hold true, the app might not behave as expected.

  • Each course can be uniquely identified be the combination of its title, type, semester, credits and module.
  • If there are two courses with the same title and type, both versions appear in search results, but only one can be chosen.
  • There are no duplicates in curriculum.tsv.
  • A course can't be taken twice (of course in real life a course can be retaken).

About

Curriculum planner for the Data Science master's at TU Wien.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors