A microservices-based national emergency response and dispatch coordination platform for Ghana, featuring real-time incident reporting, nearest-responder dispatch, GPS vehicle tracking, and analytics.
# 🚨 Boafo
### National Emergency Response & Dispatch Platform
> **Boafo** *(meaning "helper" in Akan)* is a distributed, microservices-based emergency response and dispatch coordination platform designed for Ghana. It enables call center operators to log incidents, automatically dispatch the nearest available responder, and track emergency vehicles in real time.
Getting Started · Architecture · API Reference · Tech Stack
---
## 📋 Table of Contents
- 🌍 Overview
- 🏗️ System Architecture
- ⚡ Tech Stack
- 🔧 Microservices
- 🗄️ Database Design
- 📡 Communication & Messaging
- 📱 Frontend (Flutter)
- 🔌 API Endpoints
- 🚀 Getting Started
- 📁 Project Structure
- ⚙️ Environment Variables
---
## 🌍 Overview
In many African countries, including Ghana, emergency services such as police stations, hospitals, fire stations, and ambulance units operate independently. During emergencies, coordination is the biggest challenge — determining which responder is closest, which hospital has available beds, or which ambulance can respond immediately.
**Boafo** solves this by providing a unified platform that:
- 📝 Allows call center administrators to **record emergency incidents** with location data via Google Maps
- 🎯 **Automatically dispatches the nearest available responder** using the Haversine formula for distance calculation
- 📍 **Tracks emergency vehicles in real time** via WebSocket-based GPS streaming
- 📊 Provides **analytics and insights** on response times, incident distribution, and resource utilization
- 🔐 Supports **role-based access control** for different types of administrators
### 👥 System Actors
| Actor | Role |
|:------|:-----|
| 🖥️ **System Administrators** | Call center operators who receive emergency calls and record incidents |
| 🏥 **Hospital Administrators** | Update hospital capacity and ambulance availability |
| 🚑 **Ambulance Drivers** | Operate ambulances; vehicles transmit live location updates |
| 🚔 **Police Station Administrators** | Manage …