SahayPath

Real-Time Emergency Blood Donor Coordination Platform

Donor RegistrationEmergency Blood RequestsBlood Group MatchingLocation-Based DiscoveryAvailability ManagementEmergency AlertsRequest TrackingAdmin Moderation

Overview

SahayPath is a full-stack emergency blood donor coordination platform built to reduce the time and friction families face when searching for compatible donors during critical situations. The product connects registered voluntary donors with blood requesters through a structured workflow spanning donor onboarding, emergency request creation, intelligent matching, real-time notifications, and end-to-end request tracking.

The platform is designed as a coordination and discovery system. It improves communication between voluntary donors and people seeking blood, while actual blood collection, testing, storage, and transfusion remain the responsibility of authorized healthcare and blood-bank facilities.

The Problem

During a blood emergency, patients' families often have to rely on calling friends and relatives, posting requests on social media or WhatsApp groups, contacting multiple blood banks manually, and searching for compatible donors under severe time pressure.

While official systems such as e-RaktKosh provide blood-stock, blood-bank, donor-registration, and online request services, families in urgent need still struggle with fast donor discovery and direct coordination outside regulated blood-centre workflows.

SahayPath addresses this gap by acting as a dedicated coordination layer that helps requesters discover, notify, and reach relevant voluntary donors faster during time-sensitive situations.

Key Features

Donor Registration & Profiles

Users register as voluntary blood donors with name, blood group, location, contact details, donation preferences, and a live availability status. Profiles form a searchable donor network the platform can query during emergencies.

Emergency Blood Requests

Requesters create urgent blood requirements with required blood group, hospital details, location, units needed, urgency level, patient context, and contact information. Each request enters a tracked lifecycle from creation to fulfillment.

Blood Group Matching

The platform identifies potentially compatible donors based on blood group rules and request requirements. Matching is designed for discovery and outreach, not medical authorization. Final eligibility is determined by qualified healthcare professionals.

Location-Based Donor Discovery

Google Maps geocoding and distance ranking prioritize donors by proximity to the hospital or request location. Requesters see ranked matches on a dashboard and can contact the most relevant available donors first.

Real-Time Emergency Alerts

When an urgent request is created, matching donors receive instant push notifications via Firebase Cloud Messaging. Socket.io keeps request status, donor responses, and dashboard views updated in real time without manual refresh.

Donor Availability Management

Donors control whether they are currently available to receive requests. Unavailable users are excluded from active matching pools, reducing noise and preventing unnecessary contact during recovery or travel.

Request Tracking & Status Management

Requests move through structured states such as Open, Matched, In Contact, and Fulfilled. Requesters and admins can monitor progress, see responding donors, and close requests once coordination is complete.

Admin Moderation & Security

Administrators review suspicious requests, manage users, oversee emergency activity, and maintain platform integrity. JWT-secured APIs, role-based access control, input validation, and Redis-backed rate limiting protect critical endpoints.

User Roles

Blood Donors

Voluntary donors who opt in to receive relevant emergency requests.

Create and manage donor profiles

Set blood group, location, and contact preferences

Toggle availability on or off

Receive matched emergency alerts

Respond to active blood requests

Blood Requesters

Patients, family members, or coordinators seeking urgent donor support.

Create emergency blood requests

Specify blood group, hospital, and urgency

View ranked compatible donors nearby

Contact and coordinate with responding donors

Track request status through fulfillment

Administrators

Platform operators responsible for moderation and system oversight.

Manage registered users and roles

Review and flag fraudulent requests

Monitor active emergency requests

Oversee donor verification workflows

Audit platform activity and logs

How It Works

  1. 1

    Blood emergency occurs

    A patient or family faces an urgent blood requirement and needs to find compatible donors quickly.

  2. 2

    Requester creates blood request

    The requester submits required blood group, hospital location, units needed, urgency, and contact details through the platform.

  3. 3

    Platform identifies relevant donors

    SahayPath runs blood group compatibility checks, filters by availability, and ranks donors by proximity to the request location.

  4. 4

    Matching donors receive alerts

    Eligible and available donors are notified instantly via push alerts and can view the request in their dashboard.

  5. 5

    Donors respond and coordination begins

    Interested donors respond through the platform. The requester contacts donors directly and tracks status updates in real time.

  6. 6

    Donation at authorized facility

    Actual screening, collection, and transfusion take place through an authorized blood centre or hospital, outside the platform's clinical scope.

System Architecture

Frontend (React + TypeScript)

Responsive web application with separate views for donors, requesters, and admins. Includes request dashboards, donor profile management, live status updates, and map-based location selection.

Backend API (Node.js + Express)

RESTful API handling authentication, donor profiles, emergency requests, matching logic, notification triggers, and admin operations. Input validation and JWT middleware secure all protected routes.

Database (PostgreSQL)

Relational storage for users, donor profiles, blood requests, match results, request status history, admin actions, and audit logs.

Caching & Rate Limiting (Redis)

Session caching, frequently accessed donor queries, and API rate limiting to keep matching and notification endpoints performant under load.

Real-Time Layer (Socket.io)

Live updates for request status changes, donor responses, and admin dashboard activity without requiring page reloads.

Notifications (Firebase Cloud Messaging)

Push alerts delivered to matching donors when new urgent requests are created within their blood group and geographic radius.

Geolocation (Google Maps API)

Geocoding hospital and donor locations, calculating distances, and ranking donor matches by proximity to the emergency request.

Tech Used

ReactTypeScriptNode.jsExpress.jsPostgreSQLRedisSocket.ioJWTGoogle Maps APIFirebase Cloud MessagingTailwind CSS