that looks like an interesting project.
without knowing to much about your exact requirements, from a purely geospacial POV, I would say that neo4J or some other graphing DB would be much more suited than Mongo.
Mongo at least beats Relational Graphing DBs. I looked into Postgre and other suggestions on the StackExchange GIS site, but they felt like black boxes. I tried Postgre for a few days, and stopped in the first hour. Part of the problem was that I needed to download a huge SA map database off OpenStreetMaps. The whole thing felt complicated, and unnecessary because I am not intending on drawing dynamic routes (eg. a bus route doesn't change every day, storing its path as an array is adequate enough).
I didn't know about neo4j until just now. Thanks for sharing. I checked their website, will do more research into it. Maybe I can add it to my stack someday. The Dublin Transport thing's code is on Github, but the site is dead, so I can't see how that has been implemented. I'll maybe save up half a day next week to try run it on my PC and see how it is.
Now, back to mongo. Everything I need is precomputed when I add routes on the system, so I don't really need a graph db. I don't know how well this will scale, hopefully some success will shed light. The geoindexing makes my queries more efficient already, and I have built a cheap algorithm that determines valid requests from invalid ones. So you can't search for a route from Botswana to Mocam for example, you just get a response saying that route is not available, all this with just one query to the DB. This is cacheable, so that's a plus.
I also want control of the routing algorithms, because I plan on adding a lot more transport services [like
sheshatuks.co.za and planes] (eg. using a public flights API to give airplane routes from say Cape Town to Johannesburg instead of just telling you to spend x days on a train/bus) and features (like having users of the site add their own private routes) which will eventually lead to me having to tweak the algo to meet those requirements.
Out of interest, there's another guy working on something similar. The site is
http://awayto.be. Try going from Port Elizabeth to Polokwane, or just click this link:
http://awayto.be/#/-33.93264,25.56995/-23.891581,29.4496. He's much more experienced than me with programming, he did these computer things at varsity. He is also doing his own algorithms. Hopefully he continues with developing the site, would love to have a competitor to bench myself against.