BRouter is a configurable routing tool built on OpenStreetMap data, with an emphasis on bicycle routes and energy-based car routing. It takes elevation into account using SRTM and Lidar data. The project provides a routing engine written in Java, an Android app that calculates routes offline (which can also serve as the routing engine for OsmAnd, Locus Map and OruxMaps), a built-in HTTP server, and BRouter-Web, a browser interface for planning on a computer. Routing profiles can be customised.
BRouter is open source under the MIT licence and can be fully self-hosted, for example with the published Docker image, using routing data files that are regenerated weekly or built from an OpenStreetMap planet dump. On the Android app, routing runs locally, so no location data has to be sent to an external service for it. The public instance at brouter.de runs on server infrastructure that, according to the site, is funded by FOSSGIS e.V. For a European organisation that wants to avoid dependence on a commercial map provider, this is a transparent and verifiable option.