How afonsosousah/mgira works
mGira is a browser-based companion app for Lisbon’s GIRA bike-share system. The main journey is to find a station or destination, inspect available bikes, plan a route, unlock a bike, and keep the trip synchronized through completion; account, trip-history, and usage-statistics features complement it. The README documents OpenLayers, Mapbox, Firebase, and VAIMOO integrations. The graph reflects the sampled calls and explicit documentation; several implementation details are unsampled, so uncertain proxy wiring is left unverified.
Main entry points: vaimoo.js VAIMOO client · stations.js Stations · requests.js Request helper · routing.js Route planning
Components 18
Map and routing
- App shell
index.html - Map view
scripts/map.js - Stations
scripts/stations.js - Route planning
scripts/routing.js - Turn navigation
scripts/navigation.js
Bike and trip
- Bike actions
scripts/bikes.js - Trip sync
scripts/tripSync.js
Account and activity
- Account and stats
scripts/user.js - Trip history
scripts/user.js
Service integrations
- VAIMOO client
scripts/vaimoo.js - Firestore client
scripts/firestore.js - Request helper
scripts/requests.js - PHP proxy
proxy.php - Cloudflare proxy
self-hosted-proxies/cloudflare/proxy.js
Other components
- Rider
- Firebase
- VAIMOO API
- Map directions
Connections 18
- Rider → App shell: uses
README.md - Map view → Stations: opens station
scripts/map.js - Map view → Route planning: views route
scripts/map.js - Stations → Route planning: routes to station
scripts/stations.js - Stations → Firestore client: subscribes bikes
scripts/stations.js - Route planning → Map directions: gets directions
README.md - Rider → Turn navigation: navigates
README.md - Bike actions → VAIMOO client: starts and rates
scripts/bikes.js - Trip sync → Firestore client: subscribes stations
scripts/tripSync.js - Trip sync → VAIMOO client: checks trip
scripts/tripSync.js - VAIMOO client → VAIMOO API: calls API
scripts/vaimoo.js - Firestore client → Firebase: reads live data
README.md - Account and stats → VAIMOO client: loads account
scripts/user.js - Account and stats → Trip history: shows history
README.md - Trip history → VAIMOO client: loads trips
- VAIMOO client → Request helper: uses proxy request
- Request helper → PHP proxy: may proxy via
- Request helper → Cloudflare proxy: may proxy via