Food Distribution Management System for RBC Hackathon
Connecting restaurants, food banks, and drivers to reduce food waste and help communities.
Every day, restaurants have leftover food that could help people in need. Our platform automates the entire process:
- Restaurants create alerts for leftover food
- Food banks get notified and can accept within 10 minutes
- Drivers are assigned to pick up and deliver the food
- Real-time tracking ensures efficient delivery
- Backend: Flask + Firebase (Real-time notifications, Auto-escalation)
- Frontend: React (Real-time UI updates)
- Database: Firebase Firestore (Real-time sync)
- Notifications: WebSocket (Instant alerts)
cd backend
chmod +x setup.sh
./setup.sh
source venv/bin/activate
python app.pycd frontend
npm install
npm start- ✅ Create food alerts with item lists
- ✅ Track pickup status
- ✅ Auto-notification to food banks
- ✅ Receive real-time alerts
- ✅ 10-minute response window
- ✅ Auto-escalation if no response
- ✅ Capacity management
- ✅ Receive delivery requests
- ✅ Real-time navigation
- ✅ Status updates (pickup → delivery)
- ✅ Availability management
Restaurant → Food Alert → Food Bank (10 min timer)
↓
Food Bank Accepts → Driver Notification
↓
Driver Accepts → Pickup → Delivery → Complete
Backend:
- Flask (Python web framework)
- Firebase Admin SDK
- WebSocket (real-time)
- Flask-SocketIO
Frontend:
- React
- Socket.io-client
- Material-UI/Tailwind
Database:
- Firebase Firestore
See backend/README.md for detailed API documentation.
- GPS tracking integration
- Mobile apps (React Native)
- Analytics dashboard
- Multi-language support
- Payment integration for drivers
Core MVP Features:
- Restaurant alert creation
- Food bank notifications
- Driver assignment
- Real-time status updates
- Auto-escalation system
Nice-to-have (later on):
- Advanced geo-location
- SMS notifications
- Analytics dashboard
Making food distribution efficient, one delivery at a time! 🚚💨