Skip to content
← Work

Web applications

VieFlow

Matching blood donors to the request nearest them.

MappingHealthLaravel
Role
Sole author — full stack
Period
2024 — 2025
Status
Live

The problem

An urgent blood request is broadcast to whoever happens to be in a messaging group, which means it reaches thousands of people who cannot help and misses the compatible donor two streets away. Nobody tracks who responded, so the same donor is called repeatedly and hospitals have no visible picture of what is actually available.

The approach

VieFlow makes the request the unit of work rather than the message. A blood request carries its own location, blood group and facility, and donor profiles carry theirs — so a request can be directed at donors who are both compatible and close, and every response is recorded against it. Hospitals get their own surface with facility inventory, so availability is a stored quantity rather than a phone call.

What it does

Location-aware matching

Donor profiles and requests are both located, so a request reaches compatible donors near the facility rather than everyone.

Tracked donor responses

Responses and completed donations are recorded per request, which is what stops the same donor being called four times for the same unit.

Hospital and facility surface

Facilities maintain their own inventory and see requests routed to them, separately from the public donor-facing side.

Donation history and badges

A donor's record accrues over time, with recognition badges — donation is a habit, and the system is built to reward the repeat.