Food delivery platform for Bungoma County, Kenya. Full-stack MERN application with M-Pesa integration, real-time tracking, and multi-channel ordering.
# BungoEats - Food Delivery System for Bungoma County
## Overview
BungoEats is a comprehensive food delivery platform designed specifically for Bungoma County, Kenya. Inspired by Dial-A-Delivery, this system connects local restaurants and fast-food vendors with customers, providing a seamless ordering and delivery experience.
## Features
### Customer Features
- **Multi-channel Ordering**: Order via web app, mobile app, phone, or WhatsApp
- **Real-time Order Tracking**: Track your order from preparation to delivery
- **M-Pesa Integration**: Secure payment through M-Pesa or cash on delivery
- **Menu Categories**: French fries, samosas, fresh juice, pizza, and ice cream
- **User Accounts**: Save delivery addresses and view order history
- **Live Updates**: Socket.io integration for real-time order status updates
### Restaurant Features
- **Menu Management**: Add, update, and manage menu items
- **Order Management**: Receive and process orders in real-time
- **Inventory Control**: Mark items as available/unavailable
- **Analytics Dashboard**: Track sales and popular items
### Admin Features
- **User Management**: Manage customers and restaurant partners
- **Order Oversight**: Monitor all orders across the platform
- **System Analytics**: View platform-wide statistics
## Technology Stack
### Backend
- **Node.js** with **Express.js**: RESTful API server
- **MongoDB**: NoSQL database for flexible data storage
- **Mongoose**: ODM for MongoDB
- **JWT**: Secure authentication
- **Socket.io**: Real-time bidirectional communication
- **bcrypt**: Password hashing
### Frontend
- **React**: Component-based UI library
- **React Router**: Client-side routing
- **Material-UI**: Modern, responsive UI components
- **Axios**: HTTP client for API requests
- **Socket.io-client**: Real-time updates
## Project Structure
```
BungoEats_Delivery_System/
├── backend/
│ ├── models/
│ │ ├── User.js
│ │ ├── Restaurant.js
│ │ ├── MenuItem.js
│ │ └── Order.js
│ ├── rou …