Backend API for East African transport routes, schedules, and bookings, FastAPI + MongoDB backend for East African mobility and transport data
# .github
Backend API for East African transport routes, schedules, and bookings, FastAPI + MongoDB backend for East African mobility and transport data
# Jakasipul Core: Mobility API ππ
The foundational high-performance backend engine powering East African transport systems, route optimization, transit scheduling, and digital ticket booking. Built using **FastAPI** and **MongoDB**.
## π System Overview
This core service manages high-concurrency mobility data across East African transit networks. By pairing FastAPIβs asynchronous capabilities with MongoDB's flexible, geospatial-ready document model, the platform easily processes complex regional data structuresβranging from inter-city bus routes (e.g., Nairobi to Kampala) to localized transit schedules.
### π οΈ Tech Stack
* **Framework:** FastAPI (Python 3.11+)
* **Database:** MongoDB (using Motor for async ODM/driver support)
* **Validation:** Pydantic v2
* **Containerization:** Docker / Docker Compose
---
## ποΈ Core API Architecture & Features
* **Geospatial Routing Engine:** Utilizes MongoDB 2dsphere indexes to track route coordinate paths, coordinates, and calculate proximity matching for transit stops.
* **Dynamic Scheduling Engine:** Asynchronous pipelines handle matrix schedules across varying timezones and cross-border transport nodes.
* **Atomic Booking System:** Protects transaction boundaries during booking stages to prevent double-seat allocation on passenger buses, trains, and shuttles.
---
## π Project Structure
```text
βββ app/
β βββ api/ # API router entry points (v1)
β β βββ endpoints/ # Routes: /routes, /schedules, /bookings
β βββ core/ # App configuration, security, and database clients
β βββ models/ # MongoDB / Pydantic data schemas
β βββ services/ # Business logic (fare computation, booking processing)
β βββ main.py # FastAPI application setup and lifecycle events
βββ tests/ β¦