CKD Prediction — an ML-backed medical web app
A FastAPI + Next.js monorepo that predicts chronic kidney disease risk.
A full-stack medical application that estimates chronic kidney disease (CKD) risk from patient data. A Python FastAPI backend serves the prediction model; a Next.js App Router frontend provides patient management, dashboards and reporting.
What it does
Clinicians enter patient indicators and get a CKD risk prediction, with patient records, dashboards and exportable reports. It's structured as a monorepo: a FastAPI service for the model and data, and a Next.js frontend for the UI.
How I built it
The backend is FastAPI with typed schemas and a database layer, packaged with Docker and deployed on Railway. The frontend uses the Next.js App Router with SWR for data fetching, recharts for visualizations, and xlsx export for reports.
What I learned
Connecting a Python ML service to a TypeScript frontend cleanly is its own skill: stable typed API contracts, sensible error states for clinical input, and a deploy pipeline that ships both halves. This project pushed me deeper into Python + applied ML alongside my JS stack.