🗺️ MAPS.ME — Offline OpenStreetMap maps for iOS and Android
C++ C HTML Java Objective-C Shell Other
Switch branches/tags
Clone or download
Failed to load latest commit information.
3party Review fixes. Jul 19, 2018
android Regenerated localization Aug 10, 2018
api [linux] Fixed project build with g++ 4.8. Oct 21, 2015
base Review fixes Aug 9, 2018
cmake Fixed warn: mangled name for .. will change in C++17 because the exce… Jun 25, 2018
coding Review fixes. Aug 1, 2018
data [planet] Updated countries.txt from 04.08.2018 Aug 14, 2018
debian Updated desktop EULA. Sep 23, 2015
docs delete ndk-bundle Jul 24, 2018
drape Fixed build(removed const), fixed warnings Aug 10, 2018
drape_frontend Reset not follow mode on click on waiting for location Aug 10, 2018
editor Review fixes Aug 10, 2018
feature_list Fixed build(removed const), fixed warnings Aug 10, 2018
generator Fixed build(removed const), fixed warnings Aug 10, 2018
geocoder [geocoder] Fix build. Jul 20, 2018
geometry [geometry] Fix comments. Aug 1, 2018
indexer [indexer] popularity for place page review fixes Aug 7, 2018
installer/win [fonts] Replace WenQuanYi MicroHei with Droid Sans Fallback Sep 22, 2015
iphone [iOS] fix catalog UI bugs Aug 13, 2018
kml Added new access rules for KML Aug 13, 2018
local_ads Review fixes Aug 10, 2018
map Review fixes Aug 10, 2018
mapshot Added shaders library Jun 28, 2018
openlr [indexer] Convert LoaderBase methods to const, do not store FeatureTy… Jul 30, 2018
partners_api Review fixes Aug 10, 2018
platform Review fixes Aug 10, 2018
pyhelpers Updated the spec in accordance with what Victor said. Sep 13, 2017
qt Fixed Qt downloader interface Aug 14, 2018
qt_tstfrm Usage of shaders library Jun 28, 2018
routing Review fixes Aug 10, 2018
routing_common [indexer] Style & includes Jul 30, 2018
search [ios][android] Closed or Popular condition is added for everywhere se… Aug 7, 2018
shaders Fixed traffic rendering Jul 20, 2018
skin_generator [cmake] Fix track analyzer Jul 23, 2018
software_renderer [cmake] Add precompiled headers support Jun 15, 2018
stats [cmake] Add precompiled headers support Jun 15, 2018
std Review fixes. Apr 24, 2018
storage Fixed sending statistics to PushWoosh Aug 14, 2018
testing [partners_api][android] safe callbacks Aug 14, 2017
tizen Added new booking search visualization Apr 9, 2018
tools [python] Update python test scripts Aug 1, 2018
track_analyzing [geometry] Refactoring of code that works with parametrized segments. Aug 1, 2018
tracking [trackink] Fix race. Aug 2, 2018
traffic Review fixes Aug 10, 2018
transit Review fixes. Jul 25, 2018
ugc [ugc] Fixed migration issues Aug 7, 2018
xcode [Core] Added user agent for http requests Aug 10, 2018
.clang-format [clang-format] Updated clang-format rules for ObjC. Oct 4, 2017
.gitattributes [mopub] [ios] Added Mopub framework. Apr 13, 2017
.gitignore [routing] fix conflict Jul 30, 2018
.gitmodules [twine] Make twine a submodule, and update it to 1.0.3 Mar 30, 2018
CMakeLists.txt [geocoder] Forward geocoder stub. Jul 11, 2018
LICENSE [docs] Updated license and texts Sep 29, 2015
NOTICE Fixed NOTICE and README. Sep 30, 2015
README.md Replace http with https for openstreetmap.org links Mar 16, 2018
configure.sh [android] Fixed compilation Jun 25, 2018
defines.hpp [generator][search] review fixes Jul 3, 2018
partners_strings.txt Added McAurthurGlen strings Aug 7, 2018
precompiled_headers.hpp [cmake] Add precompiled headers support Jun 15, 2018
strings.txt [strings] added translations Aug 10, 2018



MAPS.ME is an open source cross-platform offline maps application, built on top of crowd-sourced OpenStreetMap data. It was publicly released for iOS and Android.


This repository contains submodules. Clone it with git clone --recursive. If you forgot, run git submodule update --init --recursive.


If you want to improve app translations or add more search synonyms, please check our wiki.


To compile the project, you would need to initialize private key files. Run configure.sh and press Enter to create empty files, good enough to build desktop and Android debug packages.

For detailed installation instructions and Android/iOS building process, see INSTALL.md.

Nightly builds for Android are published to osmz.ru and Dropbox: release, debug.

Building maps

To create one or many map files, first build the project, then use generate_mwm.sh script from tools/unix to create a single mwm file from pbf/o5m/bz2 source, or generate_planet.sh to generate multiple countries at once from a planet o5m file. See detailed instructions in MAPS.md.

Map styles

MAPS.ME uses its own binary format for map styles, drules_proto.bin, which is compiled from MapCSS using modified Kothic library. Feature set in MWM files depends on a compiled style, so make sure to rebuild maps after releasing a style.

For development, use MAPS.ME Designer app along with its generator tool: these allow for quick rebuilding of a style and symbols, and for producing a zoom-independent feature set in MWM files.

See STYLES.md for the format description, instructions on building a style and some links.


You would need Qt 5 for development, most other libraries are included into the repository: see 3party directory. The team uses mostly XCode and Qt Creator, though these are not mandatory. We have an established coding style.

See CONTRIBUTING.md for the repository initialization process, the description of all the directories of this repository and other development-related information.

All contributors must sign a Contributor Agreement, so both our and their rights are protected.


Please report bugs and suggestions to the issue tracker, or by mail to bugs@maps.me.

Authors and License

This source code is Copyright (C) 2015 My.com B.V. (Mail.Ru Group), published under Apache Public License 2.0, except third-party libraries. See NOTICE and data/copyright.html files for more information.