🩸 Emergency Donor Connect – Project Story 🚀 What Inspired Us During a college medical emergency, one of our teammates struggled for hours to find a matching blood donor. Despite several apps and online platforms, none gave real-time availability, nor did they ensure verified data or fast coordination. That moment made us realize: finding help shouldn’t be a hunt — especially when every second counts.

This project was born out of the need for speed, trust, and simplicity in life-threatening situations.

📚 What We Learned The importance of hyperlocal, real-time data in emergency applications.

How consent, trust, and privacy must be deeply embedded into the user flow — not treated as afterthoughts.

Using Firebase Cloud Messaging for instant donor alerts.

Applying PostgreSQL relational modeling to link users, donors, consent, and hospital data efficiently.

Handling edge cases in real-time communication: network drops, unresponsive donors, etc.

🛠️ How We Built It 🔧 Tech Stack Frontend: Flutter (Dart) — for fast, responsive cross-platform mobile app

Backend: Node.js + Express — REST APIs and core business logic

Database: PostgreSQL — structured donor and request data

Real-Time Alerts: Firebase Cloud Messaging (FCM)

Cloud: AWS EC2 + S3 (for storage of consent forms, etc.)

Authentication: JWT-based login with role-based access

Admin Dashboard: React.js — monitor donor activity, alerts, analytics

🧠 Features Verified donor registration and consent wallet

Real-time blood/organ request broadcasting

Smart matching based on availability, proximity, and compatibility

Volunteer coordination support

Hospital-verified requests only — to eliminate false/abusive usage

⚠️ Challenges We Faced Trust & Privacy Concerns: Designing a flow where donors feel safe sharing sensitive info.

Real-Time Matching: Ensuring quick and accurate donor matching in a scalable way.

Mobile-First UX: Keeping the app dead simple, even under pressure during an emergency.

Network Limitations: Handling poor internet zones, especially in rural areas.

🧮 Any Math or Logic Used We used a basic distance formula to match nearby donors:

Distance

( 𝑥 2 − 𝑥 1 ) 2 + ( 𝑦 2 − 𝑦 1 ) 2 Distance= (x 2 ​ −x 1 ​ ) 2 +(y 2 ​ −y 1 ​ ) 2

In production, this would be replaced with the Haversine formula to compute geospatial distances:

𝑑

2 𝑟 ⋅ arcsin ⁡ ( sin ⁡ 2 ( Δ 𝜙 2 ) + cos ⁡ ( 𝜙 1 ) cos ⁡ ( 𝜙 2 ) sin ⁡ 2 ( Δ 𝜆 2 ) ) d=2r⋅arcsin( sin 2 ( 2 Δϕ ​ )+cos(ϕ 1 ​ )cos(ϕ 2 ​ )sin 2 ( 2 Δλ ​ ) ​ ) Where:

𝜙 ϕ: latitude

𝜆 λ: longitude

𝑟 r: radius of Earth (~6371 km)

🌱 What’s Next Offline-first mode for rural regions

AI-based smart priority alerts (e.g. auto-flagging rare blood types)

Vernacular language support

Government hospital partnerships

Share this project:

Updates