Full Product Engineering / ML / AnalyticsCOMPLETED

EduRisk

A comprehensive college academic platform featuring 3 role-based portals, integrating Random Forest ML prediction and SHAP explainability into actionable workflows.

Pythonscikit-learnFastAPIReactMySQL
edurisk.local / student-profile
Student #8492
Random Forest / SHAP Analysis
HIGH RISK
PREDICTED DROPOUT PROBABILITY
82%
↑ Increasing (WebSocket)
SHAP FEATURE IMPACT
Low Engagement
+0.42
Missed Deadlines
+0.21
Past Grades
-0.15
TRIGGER FACULTY INTERVENTION
ROLEFull Stack ML Engineer
TYPEAcademic Intelligence Platform
STACKPython / scikit-learn / FastAPI / React / MySQL
ARCHITECTURE3-Portal Service-Oriented Architecture
STATUSCOMPLETED

01 / The Problem

Many colleges do not have a comprehensive digital portal unless they are part of a massive university ecosystem. Furthermore, educational institutions collect vast amounts of data but fail to identify at-risk students proactively. Simply outputting an ML 'risk score' is useless to educators who need to know WHY a student is failing in order to intervene.

Fragmented Operations

Students, faculty, and deans operate in silos without a unified platform for academic management.

The ML Black Box Problem

A machine learning model is not actionable if administrators don't trust or understand its reasoning.

02 / The Idea

Build a complete academic intelligence and management platform with distinct portals for Students, Faculty, and Deans. Machine learning is integrated as a decision-support layer, using a Random Forest classifier to predict dropout risk and SHAP to inherently explain the reasoning, allowing faculty to execute a closed-loop intervention workflow.

1
DATA
2
PROCESSING
3
PREDICTION
4
EXPLAINABILITY
5
INTERVENTION

03 / How It Works

A robust service-oriented architecture combining a React frontend tailored via RBAC, a FastAPI backend serving ML predictions & WebSocket events, MySQL for relational persistence, and a scikit-learn pipeline.

Academic Intelligence

Don't just show students data—help them understand where they need to improve. The student portal translates raw academic signals into actionable insights and weak-area heatmaps.

  • Weak-Area HeatmapsVisual identification of struggling subjects
  • Attendance vs PerformanceCorrelates absence with academic decline
RBAC: STUDENT
Calculus (High Risk)Physics (Safe)
User Interface
React / 3 PortalsDistinct views for Student, Faculty, and Dean
API & Auth
FastAPI / JWT / WebSocketsReal-time updates, auth, and intervention routing
Data Layer
MySQL 8 / SQLAlchemyStrict relational schema for academic records
ML Pipeline
Random Forest / SHAPPredictive classification and feature explainability

04 / The Theory

Role-Based Access Control (RBAC)

System Security & UX

What it is

An architecture where user roles determine both data permissions and the available features in the application.

Why it is useful

A college platform requires strict boundaries. A student must only see their own weak-area heatmaps, a faculty member monitors their classes, and a Dean acts as an institutional command center.

How this project uses it

JWT authentication strictly partitions the React frontend into three distinct portals (Student, Faculty, Dean) backed by FastAPI permission validation.

Educational Analytics

Data vs Insight

What it is

The transformation of raw academic signals (Data) into actionable performance indicators (Insight).

Why it is useful

Telling a student 'Attendance = 72%' is raw data. Identifying that 'Attendance is becoming a critical risk factor for your academic trajectory' is a valuable insight.

How this project uses it

The Student portal visualizes weak areas and activity heatmaps, helping them plan improvement strategies rather than just viewing raw grades.

Explainable AI (XAI)

SHAP (SHapley Additive exPlanations)

What it is

A game-theoretic approach to explain the output of any machine learning model by assigning a contribution value to each specific feature.

Why it is useful

Educators need to know if a 'High Risk' prediction is due to poor attendance, failing grades, or low engagement in order to take the correct action.

How this project uses it

The ML pipeline returns both the risk classification AND the SHAP values, visualizing exactly which positive or negative factors drove the prediction.

The Intervention Loop

Decision Support Workflows

What it is

A workflow system designed to Monitor → Identify Risk → Understand Why → Intervene → Track → Evaluate.

Why it is useful

It shifts the system from a passive dashboard to an active operational tool.

How this project uses it

Faculty use the SHAP explanations to initiate logged interventions, track student progress, and evaluate the outcome over the semester.

05 / Features & Capabilities

3 Role-Based Portals

Distinct, feature-rich dashboards for Students, Faculty, and Institutional Deans.

AI Risk Prediction

Accurate classification of student dropout risk using a trained Random Forest model.

Explainable Predictions (SHAP)

Deconstructs black-box predictions into understandable, actionable feature contributions.

Real-Time WebSockets

Instantaneous dashboard updates via FastAPI WebSockets without page reloads.

Intervention Management

Closed-loop workflow allowing faculty to log, track, and evaluate the outcome of student interventions.

06 / Engineering Decisions

FastAPI Backend

Why

Provides incredibly fast asynchronous endpoint execution and native WebSocket support, which is critical for the real-time intervention tracking.

Trade-off

Slightly higher learning curve for ORM management (SQLAlchemy) compared to Node.js frameworks.

MySQL for Data Storage

Why

Educational data is highly structured and relational (Users → Courses → Enrollments → Interventions). Strict ACID compliance is mandatory to prevent academic record corruption.

Trade-off

Requires strict schema migrations and rigid data models compared to NoSQL approaches.

Random Forest over Deep Learning

Why

Tabular, structured academic data rarely benefits from deep neural networks. Random Forest trains faster, requires less data, and is fundamentally easier to integrate with SHAP explainability.

Trade-off

May not capture extremely complex, unstructured non-linear relationships as effectively as deep learning.

07 / Challenges

Challenge

Providing Different Experiences for 3 Roles

Approach

Architected a strict RBAC system where the frontend conditionally renders entirely different routing trees and dashboard layouts based on the decoded JWT claims.

Lesson

Complex B2B/Enterprise software requires thinking in personas, not just features.

Challenge

Making ML Predictions Understandable

Approach

Integrating SHAP was only half the battle; the UI had to translate mathematical feature contributions into plain-English insights for non-technical faculty members.

Lesson

A machine learning model is entirely useless if the end-user doesn't trust or understand the output.

08 / Outcome

"Engineered a comprehensive, production-ready academic operating platform that prioritizes human explainability and actionable intervention workflows."

  • Built and secured 3 distinct organizational portals (Student, Faculty, Dean).
  • Successfully deployed an explainable Random Forest pipeline via FastAPI.
  • Integrated real-time WebSocket communication for instant intervention tracking.

09 / What I Learned

  • 01Working with explainable ML (XAI) bridges the gap between data science and product design.
  • 02Building the 'Intervention Loop' taught me that software should support human workflows, not just display data.
  • 03Managing a full stack (MySQL, FastAPI, ML Models, Next.js, WebSockets) requires strict architectural separation of concerns.

10 / Next Steps

  • Implement longitudinal risk tracking (visualizing risk across multiple semesters).
  • Develop model calibration and drift-detection pipelines to maintain accuracy over years.
  • Add intervention outcome analytics (determining which intervention strategies work best).
  • Expand the Student portal with AI-driven study planning based on weak-area heatmaps.

Interested in the implementation?

Dive into the source code to see how the architecture was built.

View Source on GitHub