Donate Life

Inspiration

  • Blood shortages are a major issue worldwide, especially during emergencies.
  • We wanted to create a system where blood banks could efficiently connect with donors in real-time.
  • The idea was to reduce delays and ensure life-saving donations reach those in need as quickly as possible.

What it does

  • Blood banks post emergency blood requests on the platform.
  • Nearby donors with matching blood types receive SMS and email notifications.
  • Donors can accept the request and proceed to donate at the blood bank.
  • If no donors accept, the search radius expands until a match is found.
  • A machine learning model predicts future blood demand to help banks prepare in advance.
  • Interactive visualizations make it easy to analyze blood demand trends.

How we built it

  1. Frontend: Built with React.js for a responsive and intuitive user experience.
  2. Backend: Powered by Node.js, handling request processing and donor notifications.
  3. Database: MongoDB, chosen for its geospatial querying capabilities using geoNear.
  4. Notifications: Implemented SMS and email alerts using Textbelt and AWS SES.
  5. Mapping: Used Leaflet.js for an interactive map view of donors and blood banks.
  6. Machine Learning: Developed a linear regression model to predict future blood demand.
  7. Hosting & Integration: Integrated AWS Lambda for scalable prediction processing.

Challenges we ran into

  • SMS Notifications: Many services required verified numbers, making implementation difficult.
  • Limited Data: Working with synthetic and small datasets made model accuracy a challenge.
  • Geospatial Queries: Optimizing MongoDB’s geoNear query for efficient donor searches.
  • Real-Time Expansion: Dynamically increasing the search radius while keeping latency low.

Accomplishments that we're proud of

  • Successfully implemented a real-time donor notification system.
  • Developed a predictive model that forecasts blood demand for proactive planning.
  • Built an intuitive UI and visualization tools for blood banks.
  • Optimized MongoDB queries for fast and efficient donor lookups.
  • Overcame SMS delivery challenges to ensure reliable notifications.

What's next for Donate Life

  • Blood Bank Collaboration: Enable blood banks to share resources in emergencies.
  • User Prioritization: Rank donors based on availability and past donations.
  • Advanced Prediction Models: Improve accuracy using deep learning techniques.
  • Automated Inventory Alerts: Notify blood banks when supply levels are low.
  • Mobile App Integration: Extend the platform to iOS and Android for easier donor access.
Share this project:

Updates