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
- Frontend: Built with React.js for a responsive and intuitive user experience.
- Backend: Powered by Node.js, handling request processing and donor notifications.
- Database: MongoDB, chosen for its geospatial querying capabilities using
geoNear. - Notifications: Implemented SMS and email alerts using Textbelt and AWS SES.
- Mapping: Used Leaflet.js for an interactive map view of donors and blood banks.
- Machine Learning: Developed a linear regression model to predict future blood demand.
- 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
geoNearquery 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.
Log in or sign up for Devpost to join the conversation.