About the Project:
As a student myself, I’ve always found the college decision process overwhelming. There are tons of rankings and statistics online, but none of them really tell you what school is best for you. After learning that 34% of U.S. students regret their college choice, I realized there had to be a better way to personalize the decision-making process.
That’s how Smart College Recommender was born.
It’s a web app that helps students make informed college decisions by analyzing financial and lifestyle factors. The app predicts expected student debt, estimates return on investment (ROI) based on major-specific earnings, and evaluates quality of life (QoL) using student reviews and environment data. It even lets users prioritize between ROI and QoL using a simple slider.
How I Built It The app is built with a full-stack architecture:
Frontend: React.js + Vite
Backend: FastAPI (Python)
Machine Learning: Trained an XGBoost regression model to predict student debt, using features like tuition, graduation rate, and income tier.
Visualization: Used Matplotlib, Pandas, and Scikit-learn to evaluate the model (R² = 0.77, RMSE ≈ $1,946).
NLP + QoL: Integrated sentiment-based scoring to estimate quality of life from external data.
Data: U.S. Department of Education’s College Scorecard (institutional + field-of-study level).
Fuzzy Matching: Used string similarity techniques to match user input with real school names and majors.
What I Learned I learned how to bridge the gap between backend machine learning models and a clean, usable frontend. More importantly, I learned how powerful data-driven design can be when it’s put into the hands of real users.
Challenges My biggest challenge was definitely cleaning and integrating multiple datasets while handling edge cases like missing data and fuzzy inputs. I had to account for NaN values and Privacy Suppressed values. I also had to securely handle API keys, which initially caused some version control issues and get CORS and deployment issues under control.
Log in or sign up for Devpost to join the conversation.