HAFIDZ
Back to selected work

CASE STUDY

Mobile Application 2025

Multi-Role Blood Donor Information System

A Flutter-based mobile application for managing multi-role blood donation workflows across Admin, Management, Staff, and Volunteer users. The system integrates Firebase authentication, blood inventory by blood type and WB, PRC, TC, and FFP components, incoming and outgoing blood transactions, blood requests, donor activities, donation history, critical stock warnings, and operational reporting.

TECHNOLOGY

Flutter / Firebase Authentication / PDF / Printing / HTTP API Integration / Android / Provider / fl_chart / Firebase App Check / Cloud Firestore

Preview of Multi-Role Blood Donor Information System

THE CHALLENGE

Blood donation management involves several interconnected workflows, including volunteer data, donor activities and attendance, blood inventory, incoming and outgoing transactions, requests, and reporting. When these processes are not managed through a consistent workflow, inventory status, transactions, and request follow-up become more difficult to monitor across users with different responsibilities.

WHAT I BUILT

  1. 01

    Multi-Role Application Workflows

    Application interfaces and workflows are separated for Admin, Management, Staff, and Volunteer roles according to their respective responsibilities.

  2. 02

    Component-Based Blood Inventory

    Inventory is managed by blood type and WB, PRC, TC, and FFP components, with indicators for identifying critically low stock conditions.

  3. 03

    Transactional Inventory Consistency

    Incoming blood, outgoing blood, request approvals, and donor processing use transactions and idempotency mechanisms to help prevent duplicate or partial inventory updates.

  4. 04

    Donor Activities and History

    The system supports donor schedules, registration, attendance, donor result processing, and donation history within a connected application workflow.

  5. 05

    Operational Dashboard and Reporting

    Dashboards provide inventory and activity summaries, incoming and outgoing blood trends, critical-stock warnings, and PDF reporting support.

  6. 06

    Volunteer Account Verification

    Volunteer registration uses Firebase Authentication with email verification and administrator verification status before access to the volunteer area is granted.

APPROACH

The system was developed as a Flutter application using Firebase Authentication and Cloud Firestore for authentication and data management. Application interfaces and workflows are separated for Admin, Management, Staff, and Volunteer roles. The inventory module manages stock by blood type and WB, PRC, TC, and FFP components, with critical-stock indicators. Incoming blood, outgoing blood, and request approval workflows use coordinated data updates to maintain inventory consistency. The application also includes donor activities, attendance workflows, donation history, operational dashboards, data visualization, and PDF reporting.

Multi-Role Blood Donor Information System Open screen 01 at full size
Screen 01 Component-based blood inventory monitoring with total stock summaries and indicators for critically low components.
Multi-Role Blood Donor Information System Open screen 02 at full size
Screen 02 Blood request workflow with pending, processing, accepted, and rejected status tracking for each request.
Multi-Role Blood Donor Information System Open screen 03 at full size
Screen 03 Donor activity and attendance management with participant counts and processing progress for each scheduled event.
Multi-Role Blood Donor Information System Open screen 04 at full size
Screen 04 Operational reporting summary for blood transactions, donor activities, period recaps, and PDF report generation and printing.
Multi-Role Blood Donor Information System Open screen 05 at full size
Screen 05 Volunteer-specific dashboard providing centralized access to schedules, donor activities, blood requests, and donation history.

OUTCOME

The implementation provides a single mobile application connecting blood inventory, transactions, requests, donor activities, attendance, history, and reporting through multi-role workflows. Operational dashboards provide summary information and critical-stock indicators, while inventory transactions and approval flows are designed to reduce duplicate or inconsistent data updates.

Working on a similar system?

Share the workflow or problem you want to solve. I can help clarify the technical requirements and a practical implementation approach.

Discuss a Project