Trnava transport development · Transport data
For Trnava, we created a private analytical application that brought city-bus and cycle-route data into one working view of the city.

Technology
01
In 2022, data about buses, stops, tickets, and cycle counters arrived in different files. The six-month project turned them into one coherent working view.

01 / Under the surface
We separated the system into inputs, validation, a local data layer, shared calculations, and working views. Smaller reference data stayed in the browser; larger GPS and ticket records were loaded only for the active session. Python supported upstream preparation outside the published Vue client.

02
The map connected lines and stops with GPS timing, waiting, boardings, revenue, and the card-to-cash ratio. Filters moved the analysis from the whole city to a specific line or stop.

03
Cycle routes and counters used the same map logic as the bus network. Analysts could switch layers, inspect route use, and compare two kinds of movement in one city context.

02 / Analyst journey
The analyst first checked the inputs, opened the shared map context, selected a stop or cycle counter, narrowed the question with filters, and then worked with a route or export. Every step used the same data rather than separately assembled reports.

04
Recurring CSV and JSON imports stayed separate from presentation. Python prepared the data while Vue 3 served it as maps, tables and charts that filter without rebuilding reports by hand.

03 / Design principle
Conversion utilities turned different file formats into shared objects. The parent analysis layer then filtered, sorted, and aggregated the data once and passed the same result to both the table and chart. The interface stayed consistent without inventing a server layer.

05
The result was a private application where bus transport and cycling infrastructure could be explored side by side. The city gained one consistent workspace for its transport data.
“The data began to tell one story about how the city moves.”
A similar goal, built around your needs