title: MoBaz MRU
emoji: π
colorFrom: red
colorTo: green
sdk: docker
app_port: 7860
pinned: false
license: mit
short_description: Offline-first Mauritius bus journey planner + live API
π MoBaz β Mauritius Bus Planner
MoBaz (Mauritian Creole for "my bus") is an offline-first journey planner for Mauritius' bus network. Pick an origin and destination and it plans a route β showing the bus line(s) to take, every stop with timing, the frequency (headway), and the road-following path on a map.
This Space serves the live API + dataset and a Grafana metrics UI. One public port (7860) is fanned out by nginx to four processes (backend, Prometheus, Grafana, nginx):
| Path | Serves |
|---|---|
/ |
Grafana dashboards (redirects to /grafana/) |
/app/ |
the web app (PWA) |
/api/*, /data/* |
live planner API + dataset (the iOS/Android apps use these β unchanged) |
/metrics |
Prometheus exposition (scraped internally) |
/status |
dependency-free backend status page |
- Web app: open
/app/on this Space. - Metrics: open the Space root (Grafana). Set a
GF_SECURITY_ADMIN_PASSWORDSpace secret to lock the Grafana admin account; anonymous visitors get read-only. - Android app refresh endpoint:
./data/network.json(unchanged).
Note: HF Space storage is ephemeral and the Space sleeps when idle, so the Prometheus history resets on restart β dashboards show data since the last boot.
All journey planning runs on-device over the bundled network, so the app works with no internet; map tiles are cached as you view them.
Data & credits
- Routes, stops, frequency: mauritius-buses.com (unofficial community data).
- Map tiles, stop coordinates: Β© OpenStreetMap contributors.
- Road geometry: OSRM.
Not affiliated with NLTA, CNT or UBS. Frequencies are weekday headways, not fixed timetables.