A robust machine learning-based system for predicting post-transplant survival outcomes in patients undergoing Hematopoietic Cell Transplantation (HCT). This project combines a FastAPI backend with a Next.js frontend to provide clinicians with an interactive, real-time decision-support tool that outputs personalized survival risk scores.
- 🔍 Personalized survival risk prediction using clinical features
- 📊 Dashboard with variable definitions, data distribution, and model performance graphs
- 🧠 Ensemble of 10 ML models using LightGBM and CatBoost across five survival targets
- 📈 HLA-based feature engineering and fairness-aware training
- 🌐 FastAPI backend and Next.js frontend for real-time access and prediction
Make sure you have Python 3.10 or later installed.
Install the required Python libraries by running:
cd backend
pip install -r requirements.txtNavigate to the backend directory:
cd backend/Start the FastAPI server using:
uvicorn main:app --reloadThe API will be available at: http://localhost:8000
Note: Some model files are large (>100MB) and are tracked using Git Large File Storage (LFS). If you're cloning this repo, ensure Git LFS is installed and run:
git lfs install git lfs pull
Ensure Node.js (v18+) and npm are installed.
Navigate to the frontend directory:
cd frontend/hctInstall the required packages:
npm installStart the development server:
npm run devThe app will be available at: http://localhost:3000
- Go to
http://localhost:3000 - Use the Home page to explore variable definitions and model insights.
- Use the Predict page to input patient data and generate a survival prediction score.