ASUP (Automated Substitution Program) is a Python-based automation tool designed to help schools efficiently manage teacher substitutions. It uses Excel files to read teacher schedules and class group mappings, then generates a Word document listing eligible substitute teachers based on school-specific rules.
- Reads and processes teacher timetable and group mapping from Excel files
- Automatically filters for:
- Teachers with 2 or more free periods
- Category-based teaching groups (6β8 and 9β12)
- Generates a ready-to-edit
.docxfile with substitution recommendations - Designed to be easily customized for different institutions' needs (e.g., moral reasoning, priority teachers)
- Lightweight and doesn't require a complex database
ASUP/
βββ data/
β βββ teachers_timetable.xlsx # Input: Teacher period schedules
β βββ teacher_group_mapping.xlsx # Input: Class group assignments per teacher
βββ output/
β βββ substitution_list.docx # Output: Generated substitution list
βββ main.py # Main logic script
βββ README.md # Project documentation
βββ requirements.txt # Python dependencies
**Input Files (Excel Format)**
The program uses the following files from the data folder:
πΉ T_TIMETABLE.xlsx
Format: One worksheet per teacher
Each sheet:
Rows: Days of the week (Monday to Saturday)
Columns: Period 1 to Period 8
Cell content:
Blank β Free period
Otherwise β Subject-ClassSection (e.g., Math-6A, Sci-7B)
πΉ TMAP-Teachers-Classes.xlsx
A single-sheet Excel file mapping teacher codes and class groups.
Columns:
TCODE β Unique teacher ID (e.g., T102)
TNAME β Teacher's name (e.g., Anjali)
TCLASSES β Classes taught, as comma-separated values (e.g., 6,7)
β οΈ The real files are excluded for privacy. Sample files are provided in the data/ folder.