About GoSaraj
GoSaraj is a free, open-data passenger app for Sarajevo. It blends live transit, traffic and taxi data into one map so you spend less time waiting and more time moving.
Where the data comes from
- Stops and lines: OpenStreetMap (every GRAS tram and trolleybus route relation), including the real route polylines and stop sequences. Refreshed by re-running the bundled Overpass importer.
- Vehicle positions: GRAS does not publish a public live-tracking feed. The vehicle layer is a schedule-based simulator and is off by default. We will switch it to live as soon as a public feed is available.
- Traffic incidents and flow: TomTom Traffic API, refreshed every five minutes.
- Geocoding and routing: Mapbox, scoped to Bosnia and Herzegovina with Sarajevo as the proximity centre.
- Taxi stands: OpenStreetMap via the Overpass API, filtered to the Sarajevo bounding box.
- Basemap: OpenFreeMap (OSM-based vector tiles, no token, no telemetry), rendered with MapLibre GL.
How the stack works
The browser talks to a hardened Next.js proxy that handles CORS, rate limiting, caching and Zod validation. Secret tokens (TomTom, Mapbox secret, Supabase service role) only live on the server. Push subscriptions and service alerts live in Supabase Postgres with row-level security.
Mobile app
A native Expo build is feature-complete on the build branch and will ship to the Play Store and App Store after web launch.