Create your ITU course schedules in fashion with up-to-date & detailed information.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
ITUscheduler
api
blog
scheduler
.gitattributes
.gitignore
LICENSE
README.md
manage.py
requirements.txt

README.md

ITUscheduler

LICENSE Python

ITU Scheduler is a Python Django Web Application that parses ITU's SIS website and allows students to create possible course schedules with up-to-date & detailed information. The project is maintained by @dorukgezici.

Installation

  • Install Python 3
  • pip3 install -r requirements.txt
  • Install WeasyPrint's dependencies
    • MacOS: brew install python3 cairo pango gdk-pixbuf libffi
    • Debian / Ubuntu: sudo apt-get install build-essential python3-dev python3-pip python3-setuptools python3-wheel python3-cffi libcairo2 libpango-1.0-0 libpangocairo-1.0-0 libgdk-pixbuf2.0-0 libffi-dev shared-mime-info
    • Windows

Usage on localhost

  • python3 manage.py makemigrations api scheduler blog
  • python3 manage.py migrate
  • python3 manage.py createsuperuser to create a super-admin user
  • python3 manage.py runserver
  • Check 127.0.0.1:8000 on your browser & login
  • Refresh database from Menu -> Database -> Refresh Course Codes & Refresh Courses

Contribution

Everyone is welcome to contribute. Contact us if you want to be a part of the development team! Also if you find any bugs or you have some ideas / feedback, please create an issue on GitHub.

Todo

  • Parsing ITU SIS HTML
  • Course and Schedule classes
  • Check if a course is available
  • Check hours for collision
  • Create & save schedules
  • Upload old semesters by HTML file
  • Cronjobs to refresh the database automatically
  • Check major restrictions & prerequisites
  • Generate & recommend possible schedules automatically

Author

License

This software is published under the GPL v3 License.