Transit Pulse
A live map of Rotterdam’s trams and buses built from the open transit feed, smooth even on a budget phone.
client
—
role
Author
year
2024
stack
TypeScript · MapLibre · Deno

01 / problem
The public transit feed publishes every vehicle position, but the maps built on it stutter as soon as you zoom out and show a whole city. I wanted to see how far a browser map could be pushed.
02 / approach
A small Deno service turns the feed into compact binary tiles, and the front end draws them with MapLibre custom layers on the GPU. Positions are interpolated between updates, so vehicles glide instead of jumping.
03 / outcome
The map renders 1.2 million points over a day of history and holds 60 frames per second while panning on a budget phone. It started as a weekend experiment and turned into a talk at a local meetup.
1.2M
Points on the map
60 fps
While panning on a budget phone

