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.
3 countries4 kinds of transportno sign-up
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.
2
Open data only
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.
4
Nothing collected about the viewer
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: the country map with buses, trains and planesLive · Montenegro: the country map with buses, trains and planes

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 and trains on a 3D mapLive · Georgia: Tbilisi city buses and trains on a 3D map

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: Belgrade city transport and trains on the mapLive · Serbia: Belgrade city transport and trains on the map

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.
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.
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.
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.
03Phone390 px
Live · Montenegro on a phone: buses, trains and planesLive · Montenegro on a phone: buses, trains and planes

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.
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.
3
The unnecessary is hidden
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.
© 2026 · Finekot Systems ./finekot.com tg @finekot