.gitignore | ||
ib-clearance.py | ||
LICENSE | ||
README.md | ||
TODO.md |
ib-clearance
ib-clearance is a program which helps schools manage the entrance and exiting of their IB students. Due to the unique nature of IB students' timetables, the program helps check individual timetables and give clearance to students who have finished for the day.
Building
The code is currently designed to run on Python 3.6.*.
I recommend building executables with pyinstaller
with pyinstaller --onefile ib-clearance.py
.
Database specification
The program requires SQLite databases for each IB class.
Each database must contain:
Table | Description |
---|---|
students |
Contains students' names, ID numbers and class preferences |
timetable |
Timetable information for class |
students
Column | Data type | Description |
---|---|---|
id |
INTEGER |
Student ID number used in program |
g1 |
TEXT |
Group 1 subject ID |
g2 |
TEXT |
Group 2 subject ID |
g3 |
TEXT |
Group 3 subject ID |
g4 |
TEXT |
Group 4 subject ID |
g5 |
TEXT |
Group 5 subject ID |
g6 |
TEXT |
Group 6 subject ID |
name |
TEXT |
Full name of student |
timetable
Column | Data type | Description |
---|---|---|
day |
TEXT |
Day of the week (e.g. monday ) |
end_time |
TEXT |
Ending time of lesson (e.g. 09:55 , 13:05 ) |
lesson_id |
TEXT |
Subject ID of the lesson (e.g. tok ) |
Subject IDs
Subject IDs may be anything, as long as consistency is maintained throughout the tables. There are two hard-coded IDs that are always taken by every student:
Subject | ID |
---|---|
Theory of Knowledge | tok |
Guidance | gu |
License
Copyright (C) 2018 Abdulkadir Furkan Şanlı
ib-clearance is made available under the Apache License 2.0.