Moovit uses OpenStreetMap to generate its map tiles, Citymapper uses it for its walking and perhaps cycling directions. OSMAnd has quite good tools for visualising public transport routes, for instance you can plot subway routes on top of the street map, and you can select bus stops, see the buses stopping there, then select the route and see its full path and all stops mapped.
I think Maps.Me did something in that direction - but well, the quality of the underlying data varies wildly. Google can (and IMHO does) periodically pay for licensing the transport data, OSM doesn't do that (for cost and license compatibility, amongst other things). Not all PT authorities are amenable to open data :(
They are starting. You can get routing for Underground in some cities.
But if you check OSM there is a lot of data. I think that all what is missing is a algorithm to make the routing.
As an OSM contributor, I beg to differ. "Just an algorithm" needs to take into account all the different ways in which the data is input, guess at possible transfers (again, stops might be mapped, but are they reachable from each other?), and that's before we get to the issue of stale data (infrastructure might be mapped, but the line numbering and routing changes at a moment's notice).