Sangira
A verified food-redistribution platform that connects surplus-food donors with humanitarian organisations in Kigali, with dual-party confirmation on every handover so no transfer goes unaccounted for.
I solved the trust gap to ensure surplus food reaches those in need safely and efficiently.

01 — The problem
Bridging the Gap
In Kigali, hotels, caterers, and supermarkets throw away good surplus food every day while shelters and orphanages nearby struggle to feed the people in their care. The food and the need exist at the same time, in the same city what's missing is a reliable way to connect them.
The informal channels that exist run on phone calls and personal contacts, with no way to verify the organisation on the other end, no record a handover happened, no accountability when something goes wrong. For donors, that uncertainty makes it easier to bin the surplus than risk it. Waste on one side, hunger on the other, separated by a trust gap.
My challenge was to build a digital infrastructure that didn't just move food, but moved verification and accountability alongside it in real-time.
02 — The solution
Automated Accountability
I built a three-portal ecosystem (Donors, NGO, Administrators) that digitizes the entire chain of custody.
Verification
Automated identity checks for every NGO and DONOR onboarded.
Listing Flow
Simple 3-step process for DONOR to list surplus in under 40 seconds.
Dual-party Confirmation
QR-code or PIN based handshake at both pickup and drop-off points.
Impact Dash
Real-time reporting on meals saved and CO2 emissions reduced.

Listing flow

PIN confirmation
03 — Architecture
Engineered for Speed
Leveraging a modern MERN stack with Socket.io allowed me to provide the real-time feedback required for logistics while maintaining a lightweight footprint for mobile users on varied network speeds.

04 — Core features
Precision Utilities
Organisation verification
Admins review registration documents and approve, reject, revoke, or reinstate, no one transacts unverified.
Dual-party pickup confirmation
Donor and NGO each confirm independently (PIN + condition report); the transfer only completes when both agree.
Real-time notifications
Live in-app alerts via Socket.io, plus email for key events.
Location and distance
Addresses are geocoded: NGOs see how far each listing is and can view listings on an interactive map.
Impact dashboards
Real meals-redistributed, waste-prevented, and transfer figures, with CSV/PDF export.
Admin governance
Flag, suspend, revoke, and restore organisations, with a full audit trail and SLA tracking on the verification queue.
05 — Challenges and what I learned
Lessons Learned
The primary technical hurdle was handling edge cases during simultaneous pickups. I initially encountered race conditions where two drivers would attempt to claim the same donation. Solving this required implementing a locking mechanism in MongoDB with optimistic concurrency control.
I also fought 'phantom bugs' related to GPS accuracy in dense urban pockets. I solved this by implementing a fallback system that used manual landmark verification if the geofence wasn't triggered reliably.
On the deployment front, I learned that Rwandese users predominantly use mobile data with high latency. This forced me to ruthlessly optimize my asset delivery pipeline, stripping out heavy libraries in favor of native browser APIs.
Building Sangira taught me that the most elegant code is worthless if it doesn't survive the chaos of real-world logistics. Robustness isn't a feature; it's the foundation.
06 — Results
By the Numbers
3 portals
Donor, NGO, admin — full role-based access
95 / 100 / 96
Lighthouse: performance, accessibility, best practices (production)
−82% bundle
1.85 MB → 340 KB via route-level code-splitting
Have a problem like this one?
I help social enterprises and modern startups build robust, real-time digital solutions that scale.