Save Life — donations, logistics and a forecast
A donation platform for a Sri Lankan cancer hospital, and the project I submitted as my final-year thesis. It won Best Dissertation for the programme. Two problems in one system: make donating easy, and give the hospital a defensible estimate of how many patients to plan for.
Role
Sole developer
Stack
PHP, MySQL, JavaScript, Python
Context
BSc final-year thesis
Outcome
Best Dissertation award
The problem
Hair donation is unlike money donation: the donor has to physically get to a salon that knows how to cut and store it, and the hospital has to trust that what arrives is usable. There was no way to find a participating salon, no chain of custody, and nothing tying a donation back to the person who made it. Separately, the hospital was planning capacity on last year's numbers and a guess.
What I built
- Money and hair donation flows — two genuinely different journeys rather than one form with a dropdown, because the hair path involves a location, an appointment and a physical hand-off.
- A salon locator on a map, so a donor can find the nearest participating salon before committing to the cut.
- Salon accounts with certificate generation. A participating salon logs in and issues the donor a certificate carrying the hospital's authority — which turned out to be the thing that made donors follow through.
- Patient registration and reporting, with every dataset exportable to Excel because that is the format the hospital's own reporting actually runs on.
The prediction model
The forecasting side is a Python model trained on the hospital's historical intake records, predicting yearly patient volume so staffing and supplies can be planned against a number rather than a hunch. The engineering lesson was less about the model and more about the data feeding it: the historical records arrived inconsistent, and most of the real work was extracting, cleaning and structuring them before any training could be trusted.
Results are exported to Excel rather than shown only in a dashboard. That was deliberate — a forecast that cannot be pasted into the hospital's existing planning sheet does not get used.
What I would do differently
Evaluation was thinner than it should have been. I reported accuracy on a held-out split, but with health data and a small number of years the honest approach is a time-based validation and a stated confidence interval, so the hospital knows how much to trust the number. That is precisely the gap that pushed me toward the MSc in Data Science & AI I am reading now.
See the other case study
ICT School — a role-based learning platform shared by admins, teachers and students.