πΉ Modern e-commerce platform for beverage delivery in Kenya. Built with React, Node.js, PostgreSQL, and real-time WebSocket notifications. Features mobile-responsive design, admin dashboard, and real-time order management.
# Dial a Drink Kenya - Complete Ecosystem Documentation
## Overview
Dial a Drink Kenya is a comprehensive beverage delivery platform ecosystem consisting of three integrated applications:
1. **Customer Site** - Web application for customers to browse, order, and track deliveries
2. **Driver App** - Native Android application (Kotlin) for drivers to manage deliveries and earnings
3. **Admin Dashboard** - Web application for administrators to manage orders, inventory, drivers, and financials
All three platforms connect to a unified backend API hosted on Google Cloud Run, with data stored in Google Cloud SQL (PostgreSQL).
---
## Architecture
### System Components
```
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β Customer Site β β Driver App β β Admin Dashboardβ
β (React SPA) β β (Android/Kotlin) β β (React SPA) β
β Port: 3000 β β (Native APK) β β Port: 3001 β
ββββββββββ¬βββββββββ ββββββββββ¬ββββββββββ ββββββββββ¬βββββββββ
β β β
β β β
ββββββββββββββββββββββββΌββββββββββββββββββββββββββ
β
βββββββββββββΌββββββββββββ
β Backend API β
β (Node.js/Express) β
β Cloud Run β
β Port: 8080 β
βββββββββββββ¬ββββββββββββ
β
βββββββββββββΌββββββββββββ
β PostgreSQL Database β
β Cloud SQL β
βββββββββββββββββββββββββ
```
### Technology Stack
**Backend:**
- Node.js with Express.js
- Sequelize ORM
- PostgreSQL (Cloud SQL)
- Socket.IO for real-time updates
- M-Pesa API integration
- Google Maps API for delivery calculations
**Frontend (Customer & Admin):**
- React.js
- Material-UI
- Axios for API calls
- Socket.IO client for real-time updates
**Driver App:**
- Native Android (Kotlin)
- Android Studio for builds
- APK distribution
- Socket.IO client for real-time updates
**Infrastructure:**
- Google Cloud Platform (GCP)
- Cloud Run for backend and frontend hostin β¦