What it is

This application predicts student dropout risk using a supervised machine learning model and provides an interface for single-student form input or batch CSV uploads. Results are sorted by predicted risk and can be exported as a CSV. The initial approach uses a Random Forest classifier to capture non-linear relationships and interactions across categorical and numerical features.


Dataset

Source: UCI ML Repository — Predict Students Dropout and Academic Success

  • Rows: 4,424
  • Total Features: 36
  • Preliminarily Relevant Features: ~19
  • Type: Tabular

  • Marital status, Course, Previous qualification, GDP
  • Daytime/evening attendance, Mother’s qualification, Target, International
  • Nationality, Father’s qualification, Displaced, Unemployment rate
  • Educational special needs, Debtor, Gender, Inflation rate
  • Tuition fees up to date, Scholarship holder, Age at enrollment

App Functionality

  • Single-student form: Client-side validation with clear messaging.
  • Batch CSV upload: Errors listed in a table with guidance per-row.
  • Results: Sorted by predicted dropout risk (highest first); optional pie chart.
  • Export: Download processed results as CSV.

Explicit Features

Form processing
CSV processing
Error validation
Data exporting

Tools & Technologies

  • Frontend: Nuxt.js (Vue, HTML, CSS, JS)
  • Backend: Flask
  • SSR/Process Manager: pm2
  • Hosting: Netlify (frontend) and Render (backend)
Author: Benjamin Hislop (900896194)