Academic EarlyWarning System
Risk-tiers every student across 15 data models and 5 performance parameters, then drafts the intervention plan a counsellor would have written.
Hover the panel to run it
Risk tiers · dashed line is intervention
Counsellors find out a student is in trouble by reviewing performance manually, which means they find out late. The data to see it coming already exists; nobody has time to read all of it every week.
A risk score on its own changes nothing — a counsellor still has to work out what to do about this particular student. So the system had to produce context and a draft plan, not just a number, and it had to be traceable back to the student's actual record rather than a model's impression of it.
What I built
- Step 01
- Step 02
- Step 03
- 01
Risk tiering over real records
A FastAPI service over Supabase PostgreSQL scores students across 15 data models and 5 performance parameters, replacing the manual review pass.
- 02
Retrieval before generation
A ChromaDB and Groq RAG pipeline pulls that student's own context before anything is written, so the draft is grounded in their record.
- 03
Plans a counsellor can edit
The output is a drafted intervention plan in a React interface — a starting point for the human, never the decision.
What moved
Running

