UpGrade helps students predict their exam scores based on current habits and, if desired, recommends habit adjustments to reach a target score, while keeping health and daily time constraints in mind.
Predict Mode
Optimize Mode
Frontend:
• Svelte (component-based UI)
• Tailwind CSS (dark-mode theme + utility-style classes)
• Svelte Motion (tweened
) for smooth number animations
• Fetch API to call backend endpoints
Backend:
• FastAPI (Python) with CORS enabled
• scikit-learn LinearRegression model stored as model.joblib
• joblib for serialization
• Uvicorn as the ASGI server
Data & Model Training:
• Pandas & NumPy for data loading and preprocessing
• A Jupyter notebook in research/
for initial exploration and training
• train_model.py
to retrain and dump the serialized model