repowisemotis-project/motis

motis-project / motis Architecture and code health

multimodal routing, geocoding, and map tiles

C++★ 620

github.com/motis-project/motisIndexed at 39b0843Up to date with upstream

What is motis?

motis is an open-source software platform for planning and routing in multi-modal transportation systems, and its name stands for Modular Open Transportation Information System. It combines street network, timetable and sharing mobility data, such as OpenStreetMap, GTFS and GBFS, to compute routes across walking, cycling, car, sharing mobility and public transport. It also provides geocoding, reverse geocoding and background map tiles through a REST API. The core is written in C++, with a Svelte and TypeScript web interface.

Written by a model from the README and the source

460 files and 2,813 symbols in 7 modules, led by C++ (271 files) and Svelte (83).

Code health

6.9out of 10Fair

Hotspots average 4.2, the place fixes pay off most.

On the leaderboards:#4 of 8 C++ repos

Use motis-project/motis in your agent

Point Claude Code, Cursor, Codex or VS Code at this repository. Your agent gets the index this page is built from: cited answers, callers, history and health for any file.

  1. 1.In Claude, open Customize → Connectors, click +, then Add custom connector. On a Team or Enterprise plan an owner adds it first under Organization settings → Connectors.
  2. 2.Paste the server URL below as the Remote MCP server URL, then click Add.
  3. 3.Click Connect. A Repowise sign-in window opens. Approve access.
  4. 4.Repowise's tools are now available in your Claude chats.

Connect with one click. Sign in with Repowise (OAuth), no API key to copy. Works in Claude on the web, desktop, and mobile.

Docs
bash
https://api.repowise.dev/mcp/motis-project/motis
Editors need an API key: sign in to create one.Sign in to connect

This repo is public, so anyone with a Repowise account and an API key can connect.

Try asking

  • get_overview()
  • get_answer("how is motis put together?")
  • get_why("why is motis structured this way?")

Explore motis

Key features of motis

  • Routing across walking, cycling, car, sharing mobility and public transport, including combined modes.
  • Geocoding with multi-language address and stop name completion, fuzzy string matching and resolution to geo coordinates.
  • Reverse geocoding that resolves geo coordinates to the closest address.
  • A tile server for background map tiles.
  • A REST API that returns JSON over HTTP, with an OpenAPI specification for generating clients.

How motis-project/motis works

Input enters as an osm.pbf street network, GTFS or NeTEx timetables, real-time GTFS-RT or SIRI feeds, and GBFS sharing mobility feeds. exe/main.cc is the executable entry point. src/server.cc and include/motis/server.h define the HTTP server. src/endpoints/routing.cc contains the routing endpoints, and src/gbfs/update.cc contains the GBFS update logic. The include directory holds the headers and the src directory holds the implementation. The ui/src/routes/+page.svelte file is the Svelte web interface, which uses the generated client code under ui/api.

The codebase has 460 files and 2,813 symbols in 7 modules, led by C++, Svelte and TypeScript. Code health is 6.9 out of 10, rated fair.

Getting started with motis

  1. Extract the MOTIS release archive for your platform.
    tar xf motis-${TARGET}.tar.bz2
  2. Generate a config.yml from the Aachen OpenStreetMap and GTFS files.
    ./motis config aachen.osm.pbf AVV_GTFS_Masten_mit_SPNV.zip
  3. Preprocess the input files into the data folder.
    ./motis import
  4. Start the HTTP server on port 8080.
    ./motis server

Commands copied from the README

motis-project/motis FAQ

What is motis?

motis is an open-source software platform for planning and routing in multi-modal transportation systems. It provides routing, geocoding, reverse geocoding and background map tiles.

How does motis work?

motis reads an osm.pbf street network together with GTFS, NeTEx, GBFS and real-time feeds. Its results are served through a REST API with an OpenAPI specification, and its routing endpoints are in src/endpoints/routing.cc.

How do I install motis?

motis is installed by extracting a release archive for your platform. You then generate a config.yml from your OpenStreetMap and GTFS files, run import, and start the server on port 8080.

What language is motis written in?

motis is written mainly in C++. Its web interface is written in Svelte and TypeScript.

How is the motis code organized?

motis keeps headers in include, implementation in src, the executable entry point in exe, tests in test and the Svelte web interface in ui.

Who is motis for?

motis is designed for efficient planning and routing in multi-modal transportation systems. It integrates walking, cycling, car, sharing mobility and public transport.

What license does motis use?

motis is released under the MIT license, identified as MIT in its license metadata.

The summary, features and answers on this page are written by a model from the README and the source, and refreshed with each index.

About this page

Get a page like this for your own codebase

Repowise built this map of motis-project/motis from its source and git history. It parses every symbol, draws the dependency graph, scores each file's health from complexity, duplication, coverage and churn, finds hotspots and owners in the history, and writes documentation for every module. Your coding agent reads the same index over MCP, so its answers cite real files.

Index your repo freeSee how Repowise worksFree for 2 public repos, with a page like this one.

Prefer local? pip install repowise && repowise init indexes your own checkout, no account needed.