(pronounce [navi-sia])
Welcome to the Navitia repository !
Navitia is a webservice providing:
- multi-modal journeys computation
- line schedules
- next departures
- exploration of public transport data
- search & autocomplete on places
- sexy things such as isochrones
- main web site http://www.navitia.io
- playground http://canaltp.github.io/navitia-playground/
- integration documentation http://doc.navitia.io
- technical documentation https://github.com/CanalTP/navitia/tree/dev/documentation/rfc
- twitter @navitia https://twitter.com/navitia
- google groups navitia https://groups.google.com/d/forum/navitia
- channel #navitia on matrix/riot https://riot.im/app/#/room/%23navitia:matrix.org
For a more friendly interface you can use the API through navitia playground (no matter the server used).
The easiest way to have your own navitia is to use the navitia docker-compose.
If you want to build navitia, develop in it or read more about technical details please refer to CONTRIBUTING.md.
Curious of who's contributing? ⏯️ https://www.youtube.com/watch?v=GOLfMTMGVFI
Navitia is made of 3 main modules:
- Kraken is the c++ core (Heavy computation)
- Jörmungandr is the python frontend (Webservice and lighter computation)
- Ed is the postgres database (Used for preliminary binarization)
Kraken and Jörmungandr communicate with each other through protocol buffer messages send by ZMQ.
More information here: https://github.com/CanalTP/navitia/wiki/Architecture
Navitia is written in C++ / python, here are some alternatives:
- OpenTripPlanner : written in java.More information here https://github.com/CanalTP/navitia/wiki/OpenTripPlanner-and-Navitia-comparison.
rrrr : the lightest one, written in python/c
Synthese : full stack, with CMS, written all in C++
Mumoro : a R&D MUltiModal MUltiObjective ROuting algorithm