This is a bit of a fun personal project, working out how many different real time (or close to real time) data sources are avaliable for free, and can be plotted on a map (or roughly a map).
The general pattern is that the API is called from a Node-red backend, mapped and transformed, and then exposed over MQTT which the map then consumes from.
Of course all thanks on this project, and attribution, goes to the the APIs themselves, and the organisations who have made the data avaliable.
If you would like to see any of the Node-red flows, please don't hestitate to let me know.