A web application that helps students find the perfect educational institution based on their preferences and needs.
Take a quick look at Grade Up in action:
![]() Home Screen |
![]() Welcome Back Page |
![]() Dashboard |
![]() Survey |
- 🔐User authentication (registration, login, profile management)
- 🎓Student dashboard with personalized recommendations
- 🛠️ Admin panel for user and system management
- 🏫 School and program browsing
- 📊 Comprehensive progress tracking and analytics
You can view the full list of user stories HERE.
- Email Verification Toggle - You can disable email verification by setting
DISABLE_EMAIL_VERIFICATION=true
in your.env
file - Recommendation Engine - Enhanced algorithm provides personalized university and program recommendations
- Database Configuration - Supports both SQLite for development and SQL Server for production
-
Two main modules:
AdvancedPredictionSystem
: Predictions with confidence scoring.RecommendationEngine
: Program & university recommendations.
-
Integrated directly into Flask backend.
-
Uses SQLAlchemy models:
User
,Program
,School
,SurveyResponse
, etc. -
API routes call modules:
/api/predict
→predict_with_confidence()
/api/recommend
→recommend_programs()
-
Frontend sends survey data → Backend processes → Returns predictions → Displayed to user.
-
Results stored in DB:
PredictionHistory
,Recommendation
.
-
Clone the repository:
git clone https://github.com/your-username/school-recommendation-system.git cd school-recommendation-system
-
Create a virtual environment (Python 3.12 is recommended!):
python -m venv venv
-
Activate the virtual environment:
- Windows:
venv\Scripts\activate
- MacOS/Linux:
source venv/bin/activate
- Windows:
-
Install dependencies:
pip install -r requirements.txt
-
Set up environment variables:
Create a.env
file and configure your environment settings. -
Initialize the database:
flask db upgrade
-
Run the application:
flask run
You can view the ERD for this project here:
You can view the Class Diagram for this project here:
You can view the Use Case Diagram for this project here:
- Flask – Web framework
- SQLAlchemy – ORM for database operations
- Flask-Login – User session management
- Bootstrap – Frontend UI framework
- SQL Server – Configurable backend database