top of page

Co-Organisers:
I-RICE'26
4th International Research, Innovation, Creativity & Engineering Project Competition 2026

Project ID:
MEEN04301
Right Donor, Right Time: A Geolocation-Based Emergency Blood Donor Matching System
Project Title:
Category:
Medical
Inventors:
Choong Qian Er, Soh Shen, Nur Shamilla Binti Selamat
Institution/Company:
Southern University College
Invention Description/ Abstract:
Blood cannot be manufactured. It comes only from a voluntary donor, and Malaysian hospitals face recurring shortages, especially of rarer groups. Yet when a patient needs blood urgently, the appeal is still spread by hand: WhatsApp forwards, Facebook posts, word of mouth. Such appeals are untargeted. They reach thousands who are not clinically able to help, while the compatible donor a few kilometres away may never see the message. Time is lost exactly where time matters most.
"Right Donor, Right Time" replaces this guesswork with verified, blood-type-matched, location-aware alerting. It has four parts: a donor mobile app, an administrator mobile app for on-site work at drives, an administrator web console for back-office work, and a serverless backend shared by all three.
Its core innovation is the emergency workflow. A member of the public submits a request stating the patient's blood type and hospital, with a supporting hospital document attached. An administrator verifies that document and approves or rejects it. On approval the system does not broadcast: it applies the clinical compatibility rule (an A+ patient, for example, can receive from A+, A-, O+ and O-) and sends a high-priority push only to donors whose blood can actually save that patient, prioritised by proximity, while the wider community is informed at normal priority. Every alert therefore reaches someone able to act on it, so alerts are not dismissed as noise.
The platform also solves the two everyday problems that keep donor supply low. Donors find nearby donation drives on an interactive map sorted by distance and reserve a place in advance. At the event, an administrator identifies the donor by scanning a permanent QR "blood number" and records the donation digitally, replacing paper forms and scattered spreadsheets; the donor's full history is then instantly available on their phone. The whole platform, notifications included, is delivered in English and Bahasa Melayu.
A review of Pusat Darah Negara, the American Red Cross Blood Donor App and NHS GiveBlood shows each is strong in its own area, but none combines a publicly raised, document-verified emergency request, clinical blood-type matching, location-aware event discovery and a bilingual Malaysian design. That combination is what this platform delivers, and it runs on a serverless architecture at no infrastructure cost at this scale, making it adoptable by hospitals, NGOs and state blood banks, not merely demonstrable.
Invention Technical Description
ARCHITECTURE. Three clients over one shared serverless backend, in three layers. Presentation: donor and administrator mobile apps built in Flutter (Dart) from a single codebase for Android and iOS, using the BLoC pattern for state and go_router for navigation; plus an administrator web console in Next.js, React and TypeScript with Tailwind CSS, compiled to a static export and served by Firebase Hosting, needing no application server. Application: Firebase Authentication for identity, Cloud Functions (TypeScript on Node.js) for logic that must not live in a client, and Firebase Cloud Messaging for push delivery. Data: Cloud Firestore (seven collections) and Cloud Storage for hospital documents and profile images. Access rules are enforced below the clients by Firestore Security Rules, so no client can obtain a different answer.
MATCHING ALGORITHM. Blood-type compatibility is a deterministic mapping from patient type to the donor types that may safely give (A+ receives from A+, A-, O+, O-; O- only from O-; AB+ from all eight). It is computed once at submission and stored on the request, so approval is fast and the matched set cannot silently change afterwards. Proximity uses geohash-based queries (geoflutterfire_plus) against donor and event locations from geolocator, with the donor's stored address as fallback, so nearby records are found without reading the whole collection.
SERVER-SIDE FAN-OUT. Six Cloud Functions form the backend: generateBloodNo assigns each donor a unique permanent code (BD- plus six hex characters, regenerated until unique); onEventCreated, onBookingCreated and onBookingCancelled keep event capacity and booking state consistent; onAdminInvite; and onEmergencyApproved. The last is triggered by the request document turning "approved" rather than called by the app, so the fan-out to matched donors continues on the server after the administrator has put the phone away. Each push carries both English and Bahasa Melayu text, letting one message serve both audiences.
MAPPING AND COST. Maps use flutter_map with OpenStreetMap tiles instead of a billed commercial provider, and addresses resolve through the device OS rather than a paid geocoding API. Firestore's offline cache keeps the administrator app working at venues with weak signal. The web console is covered by automated tests (Vitest, Playwright). The system was built and operated entirely on free tiers, with no infrastructure cost incurred.
Demostration/ Presentation Video
Poster/ Broucher/ Invention Photo
Additional Documents
bottom of page

