Blood Donation Management System

Blood Bridge

A blood donation platform connecting donors and recipients through request management, donor search, protected dashboards, and role-based operations.

Full-stack Donation Management PlatformCompleted
Blood Bridge project thumbnail
Live

Overview

What the project is

Blood Bridge is a MERN-style donation platform for creating, managing, and discovering blood donation requests. It combines public donor discovery with authenticated dashboards for donors, volunteers, and admins.

Problem / Purpose

Why it was built

The project was built to make blood donation coordination more organized. Instead of relying on scattered posts or manual contact lists, users can create requests, search donors by location and blood group, and manage request status in one system.

Key Features

Important product capabilities

Donor Features

  • Create and manage donation requests from a protected dashboard.
  • Track request status and update outcomes when a donation workflow progresses.

Recipient / Public Features

  • Browse pending donation requests from public pages.
  • Search donors by blood group, district, and upazila.

Admin Features

  • Manage users, roles, blocks, donation requests, and platform statistics.
  • Review operational activity through dashboard-oriented views.

Volunteer Features

  • Access broader request management views to help keep donation workflows updated.

Tech Stack

Technology choices by responsibility

Frontend

ReactViteReact RouterTailwind CSSDaisyUI

Backend

Node.jsExpress.js

Database

MongoDB

Authentication

Firebase AuthFirebase Admin SDK

Tools

RechartsReact Hook FormSweetAlert2jsPDF

Deployment

Firebase HostingVercel-hosted server

Architecture / How It Works

Simple system flow

Blood Bridge uses a React client with protected dashboard routes and an Express API that verifies Firebase identity before allowing role-specific actions.

01

Authentication Flow

Users authenticate through Firebase, and protected API calls are verified on the server before accessing private resources.

02

Donation Request Flow

Donors create requests, users inspect pending requests, and request state changes as donors or volunteers update progress.

03

Role-based Dashboard Flow

Admins, volunteers, and donors see different dashboard surfaces based on their role and permissions.

04

Donor Search Flow

Search combines blood group and Bangladesh location filters so users can find relevant donors faster.

Screenshots / Visual Walkthrough

A guided look through the experience

Blood Bridge visual preview

Donation Requests

Request screens keep recipient details, location, blood group, and status visible.

Donor Search

Search flows help users filter possible donors by blood group and location.

Dashboard

Role-based dashboard views organize requests, user actions, and key statistics.

Admin Management

Admin screens support role changes, user blocking, and request oversight.

Challenges & Solutions

Engineering decisions that mattered

Challenge

Managing different permissions across admin, volunteer, and donor roles.

Solution

I separated route access and dashboard behavior by role so each user only sees the actions they should control.

Challenge

Keeping donation request status understandable.

Solution

The request lifecycle was modeled around clear states so users can tell whether a request is pending, in progress, or completed.

Challenge

Making donor search practical for local use.

Solution

I used blood group and district/upazila filters to make search more useful for real-world matching.

What I Learned

Growth from the project

  • Blood Bridge strengthened my understanding of role-based dashboards and protected workflow design.
  • It also helped me practice connecting public discovery pages with authenticated operational features.

Final Links / CTA

Explore Blood Bridge

Open the live product, review the repository, or return to the full projects archive.