kmap

From OpenStreetMap Wiki
Jump to navigation Jump to search

Not to be confused with KMaps, an iOS navigation app.

View on OSM Apps Catalog  
kmap
v · d 
Author: kmaptool
License: MIT License (free of charge)
Platforms: Linux, macOS, and Windows
Status: Active
Version: 1.9.1 (2026-10-31)
Languages:
English and Russian
Website: https://github.com/kmaptool/kmap
Source code: https://github.com/kmaptool/kmap
Programming language: Swift

Builds routable maps for Garmin devices from OpenStreetMap on your own computer, with contour lines and hill shading

Features
Feature Value
Map Display
Display map no
Map data
?
Source
?
Rotate map
?
3D view
?
Shows website
?
Shows phone number
?
Shows operation hours
?
Routing
?
Navigating
?
Tracking
?
Monitoring
?
Editing
?
Rendering
?
Accessibility
?

kmap is a free, open source program that builds maps for Garmin handhelds, watches and cycling computers from OpenStreetMap data. You pick one or more regions, press Build, and get a single .img file to copy into the Garmin folder of the device or its memory card. Everything runs locally: no account, no server, no upload of your data.

Under the hood kmap compiles the map with Mkgmap and does the rest itself: downloading extracts, elevation data and the tools, repairing and splitting the data into tiles (with its own splitter), building contours and choosing options. It has a full-screen text interface (TUI) and a command line with the same capabilities, so builds can also be scripted.

Features

  • Regions from the Geofabrik tree, from a continent down to a single state; several regions are merged into one seamless map. Maps across the 180° meridian are supported.
  • Routing and address search on the device.
  • Contour lines with a chosen interval and hill shading (DEM) for the elevation profile. Elevation sources are tried in order and fill each other's gaps: Copernicus GLO-30/GLO-90 by default, also FABDEM, GEDTM30, Viewfinder Panoramas, SRTM and ALOS.
  • Styles. Four open styles ship with the program: the openstreetmap-carto look, OpenTopoMap, CyclOSM and OSM Liberty Topo. Day and night modes.
  • Style import. kmap can take the TYP file out of a Garmin map you already have and, by matching that map's geometry against OSM data, work out which object each type stands for, so new maps are drawn the same way. This only makes sense for maps whose licence allows reusing their design.
  • Style editor in the interface, down to single icon pixels.
  • Profiles per device, for example a detailed map for a handheld and a lighter one for a watch.
  • Road repair: small gaps between roads and trails (up to 5 m) are closed so routing does not stop at them.
  • Labels in the local language, English or Russian.
  • Output as a single file, one file per region or several parts of about equal size; optionally a .gmap folder for BaseCamp.
  • Downloads are cached and resumed after a broken connection; a rebuild with fresh data starts within seconds.

Installation and usage

Builds for Windows (installer), macOS (universal, Intel and Apple Silicon) and Linux (.deb and .tar.xz, x86-64 and ARM, WSL included) are on the releases page. On first launch kmap offers to download the tools it needs (Java, mkgmap and, if needed, pyhgtmap); kmap doctor checks the setup.

Then run kmap, select a region and press Build; or from the command line, for example kmap build austria+switzerland. The map is written to ~/kmap. The README covers styles, profiles and all options.

Help

Questions and bug reports go to the issue tracker. kmap doctor answers most setup problems.

Contribute

The source code is on GitHub under the MIT licence; pull requests and issue reports are welcome.

Privacy

kmap has no accounts and no telemetry. It only downloads: OSM extracts from Geofabrik, elevation tiles from the chosen sources, and the tools it needs. Nothing about you or your maps is sent anywhere.

Licence of the maps

Maps built with kmap contain OpenStreetMap data and fall under the Open Database License; kmap writes the required attribution into the copyright lines of every map. Some elevation sources have their own terms, for example FABDEM allows non-commercial use only.

See also