🗺️ MAPS.ME — Offline OpenStreetMap maps for iOS and Android
C++ C HTML Java Shell Python Other
Latest commit 3a7ba19 Jan 20, 2017 @Zverik Zverik committed on GitHub Merge pull request #5187 from therearesomewhocallmetim/cmake_osrm_bac…

[cmake] generator tool
Failed to load latest commit information.
3party PR Fixes Jan 12, 2017
android [android] Added large fonts size settings. Jan 18, 2017
api [linux] Fixed project build with g++ 4.8. Oct 21, 2015
base [boost] Use system boost in stl_iterator Jan 16, 2017
coding Fix warnings Jan 16, 2017
data [styles] Built refactored styles Jan 19, 2017
debian Updated desktop EULA. Sep 23, 2015
docs [banners] Add banners infrastructure Nov 30, 2016
drape PR Fixes Jan 12, 2017
drape_frontend PR Fixes Jan 12, 2017
drape_head Non-sdf text support for ldpi devices. Jan 9, 2017
editor Fix warnings. Jan 13, 2017
feature_list Remove tomcrypt lib Nov 17, 2016
generator Merge pull request #5187 from therearesomewhocallmetim/cmake_osrm_bac… Jan 20, 2017
geometry [xcode] Drape projects are built in release config even it's debug co… Jan 18, 2017
indexer Fix warnings Jan 16, 2017
installer/win [fonts] Replace WenQuanYi MicroHei with Droid Sans Fallback Sep 22, 2015
iphone [cleanup] [ios] Code cleanup. Jan 20, 2017
map Added comma to place page coordinate. Jan 20, 2017
mapshot Remove using std from base Dec 28, 2016
partners_api PR Fixes Jan 12, 2017
platform Added new tags to PushWoosh Jan 16, 2017
pyhelpers Review fixes. Dec 9, 2016
qt PR Fixes Jan 12, 2017
qt_tstfrm Added drape and drape_tests Nov 14, 2016
routing [routing] fix cross mwm routes Jan 17, 2017
search Fix warnings. Jan 13, 2017
skin_generator Removed unused includes Jan 9, 2017
sound/tts Sound.txt Dec 16, 2016
stats Added project declarations to subprojects Nov 9, 2016
std [coding] Added a serialization method for traffic coords. Oct 12, 2016
storage Added new tags to PushWoosh Jan 16, 2017
testing [new downloader] Fix event loop for tests Mar 23, 2016
tizen Removed legacy style from code, scripts and projects Jan 11, 2017
tools Merge pull request #5187 from therearesomewhocallmetim/cmake_osrm_bac… Jan 20, 2017
tracking Remove using std from base Dec 28, 2016
traffic Fix warnings. Jan 13, 2017
xcode [xcode] Drape projects are built in release config even it's debug co… Jan 18, 2017
.clang-format Review fixes. Oct 13, 2016
.gitattributes .gitattr for *.xml files Sep 22, 2015
.gitignore ignore data/gps_track.dat Jan 13, 2017
.gitmodules Update documentation, git modules and configure.sh Nov 4, 2015
CMakeLists.txt Merge pull request #5087 from therearesomewhocallmetim/cmake_last_tests Jan 13, 2017
LICENSE [docs] Updated license and texts Sep 29, 2015
NOTICE Fixed NOTICE and README. Sep 30, 2015
README.md Update README.md Feb 1, 2016
common.pri Fix warnings Dec 26, 2016
configure.sh Added a stub url for providing the traffic data. Nov 3, 2016
defines.hpp [traffic] Separate keys and values when serializing traffic. Dec 8, 2016
omim.pro [generator] Make roundabouts oneways Dec 22, 2016
strings.txt [android] Review fixes Jan 11, 2017



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.