LVCase study · Liverunning
a studio project · Finekot Systems · open data
Transport of three countries on one live map
Buses, trains, planes and ships of Montenegro, Georgia and Serbia: where every trip is right now, where it is heading and when it arrives. Built from open sources, each one linked in the object card.
the task
Every trip in the country — where it is now
01Brief
1
All transport on one map
Intercity and city buses, trains, planes, ships. Tap a marker for the card: operator, route, stops, fares.
Intercity and city buses, trains, planes, ships. Tap a marker for the card: operator, route, stops, fares.
2
Open data only
A source is connected only if its terms allow public display. No paid APIs, no closed databases.
A source is connected only if its terms allow public display. No paid APIs, no closed databases.
3
Phone first
The map is opened from a phone more often, so the interface was built for the narrow screen first and the desktop second.
The map is opened from a phone more often, so the interface was built for the narrow screen first and the desktop second.
4
Nothing collected about the viewer
No sign-up. “Near me” computes distances in the browser: coordinates never reach the server.
No sign-up. “Near me” computes distances in the browser: coordinates never reach the server.
three countries
One map, different sources
CGMontenegrolive.finekot.com/cg/


Live · Montenegro
ŽPCG trains on the current timetable with fares, intercity buses from fourteen bus stations, planes from ADS-B signals, cruise ships from the Port of Kotor call schedule.
open the country map →GEGeorgialive.finekot.com/ge/


Live · Georgia
Tbilisi city buses in real time (unofficial TTC data), Georgian Railway trains with fares in euros, Georgian Bus intercity buses, Batumi — Varna ferries, planes.
open the country map →RSSerbialive.finekot.com/rs/


Live · Serbia
City transport of Belgrade, Niš and Kragujevac from open GTFS timetables with route numbers, Srbija Voz trains, planes over the country.
open the country map →how it works
One core, a country is data
02Architecture
1
Collectors on the server
Timetables, positions and port schedules are fetched from the sources and brought to one format. The map receives ready data and never calls the sources itself.
Timetables, positions and port schedules are fetched from the sources and brought to one format. The map receives ready data and never calls the sources itself.
2
A timetable position is computed
Where there is no live signal, a trip moves along OpenStreetMap rail and road geometry between stops, according to departure and arrival times.
Where there is no live signal, a trip moves along OpenStreetMap rail and road geometry between stops, according to departure and arrival times.
3
One core for three countries
Interface and logic are shared. A country is a settings file: layers, ports, the script of names, operator rules, labels. An interface change is made once and works on all three maps at once.
Interface and logic are shared. A country is a settings file: layers, ports, the script of names, operator rules, labels. An interface change is made once and works on all three maps at once.
4
Own cartography
MapLibre, 3D terrain and buildings, our own dark theme and a light one. Labels in Russian, English and the country’s language.
MapLibre, 3D terrain and buildings, our own dark theme and a light one. Labels in Russian, English and the country’s language.
03Phone390 px


A map in your pocket
Bottom tabs: the map, “Near me”, upcoming departures, layers and language. A trip card opens as a half sheet and does not cover the map.
data honesty
You can see what is live and what is scheduled
04Display rules
1
A source label on every layer
The status line says where the data comes from and how long the timetable is valid. Live signal and timetable estimates are never mixed.
The status line says where the data comes from and how long the timetable is valid. Live signal and timetable estimates are never mixed.
2
No open source — no layer
Montenegro’s city transport, Georgia’s minibuses and Serbia’s intercity buses are not on the map: no open data with display rights was found for them. The reason is written on the map itself.
Montenegro’s city transport, Georgia’s minibuses and Serbia’s intercity buses are not on the map: no open data with display rights was found for them. The reason is written on the map itself.
3
The unnecessary is hidden
Military aircraft and ships, and planes whose owners opted out of public tracking, never reach the map.
Military aircraft and ships, and planes whose owners opted out of public tracking, never reach the map.
05For business
A live map for your data
The same approach works on company data: vehicles and couriers, equipment, orders and sites in real time on one map, with a card for each.