GraphHopper supports time-dependent public transit routing by itself. You need the timetable information (GTFS) and maybe also a real-time data connection. From this data also other providers like Google and Mapbox offer their transit options, I think.
The OpenRailRouting project however is more for planning purposes (i.e. for the railway companies) to determine how long a train will take from A to B and which exact rails the route will take and which turns are allowed and more.
The OpenRailRouting project however is more for planning purposes (i.e. for the railway companies) to determine how long a train will take from A to B and which exact rails the route will take and which turns are allowed and more.