A tool that:
- Tracks student progress through manual CSV updates
- Generates progress table in MarkBind-compatible markdown
- Deploys to a website using MarkBind and GitHub Pages
-
Update
data/student_progress.csvdaily:- Mark completed tasks with
1 - Mark incomplete tasks with
0
- Mark completed tasks with
-
Run the generator:
python3 scripts/generate_progress_table.py
-
Push to master branch:
- GitHub Actions will automatically build and deploy
- Dashboard updates at: https://nus-cs2103de-ay2425s2.github.io/ip-progress-dashboard/
- Current timestamp will be shown on the website
Contains task metadata:
- Task Name: Identifier for the task
- Task Type: Weekly/Increment/Admin
- Is Optional: true/false
- Due Date: YYYY-MM-DD HH:MM format
- Week Number: Week the task belongs to
Tracks student completion:
- Full Name: Student's name
- Student ID: Anonymized ID
- Task columns: One column per task (1=completed, 0=not completed)
The script automatically generates badges with 5 different statuses:
| Badge Color | Meaning |
|---|---|
| Green | Completed required task |
| Light Blue | Completed optional task (well done!) |
| Red | Overdue task, not completed |
| Dark | Task due soon (within 5 days), not completed |
| Gray | Optional task due soon, not completed |
Tasks are only shown if they are:
- Due in past weeks
- Due in current week
- Due within next 5 days