🗺️ MAPS.ME — Offline OpenStreetMap maps for iOS and Android
C++ C HTML Objective-C Java Shell Other
Switch branches/tags
Permalink
Failed to load latest commit information.
3party [qmake] Goodbye QMake! Dec 28, 2017
android Android build fix. Dec 28, 2017
api [linux] Fixed project build with g++ 4.8. Oct 21, 2015
base [qmake] Goodbye QMake! Dec 28, 2017
coding [qmake] Goodbye QMake! Dec 28, 2017
data Rebuilt strings for short countries names Dec 22, 2017
debian Updated desktop EULA. Sep 23, 2015
docs update docs/MAPS.md Oct 10, 2017
drape [qmake] Goodbye QMake! Dec 28, 2017
drape_frontend Fixed crash in GetBgColor Dec 28, 2017
editor [qmake] Goodbye QMake! Dec 28, 2017
feature_list [qmake] Goodbye QMake! Dec 28, 2017
generator Review fixes. Dec 28, 2017
geometry [qmake] Goodbye QMake! Dec 28, 2017
indexer [qmake] Goodbye QMake! Dec 28, 2017
installer/win [fonts] Replace WenQuanYi MicroHei with Droid Sans Fallback Sep 22, 2015
iphone Removing osrm. xcode. Dec 28, 2017
local_ads [qmake] Goodbye QMake! Dec 28, 2017
map Removing osrm. cpp, hpp, CMake. Dec 28, 2017
mapshot [qmake] Goodbye QMake! Dec 28, 2017
openlr Removing osrm. cpp, hpp, CMake. Dec 28, 2017
partners_api [qmake] Goodbye QMake! Dec 28, 2017
platform [qmake] Goodbye QMake! Dec 28, 2017
pyhelpers Updated the spec in accordance with what Victor said. Sep 13, 2017
qt Removing osrm. cpp, hpp, CMake. Dec 28, 2017
qt_tstfrm [qmake] Goodbye QMake! Dec 28, 2017
routing Review fixes. Dec 28, 2017
routing_common [qmake] Goodbye QMake! Dec 28, 2017
search [search] Fixed a discrepancy in the numeration of samples. Dec 29, 2017
skin_generator [qmake] Goodbye QMake! Dec 28, 2017
software_renderer [qmake] Goodbye QMake! Dec 28, 2017
stats [qmake] Goodbye QMake! Dec 28, 2017
std [local_ads] campaign ser/des fixes + tests Aug 16, 2017
storage Removing osrm. xcode. Dec 28, 2017
testing [partners_api][android] safe callbacks Aug 14, 2017
tizen Removed legacy style from code, scripts and projects Jan 11, 2017
tools [generator] Fix unbound OSC error Dec 27, 2017
track_analyzing Removing osrm. cpp, hpp, CMake. Dec 28, 2017
tracking [qmake] Goodbye QMake! Dec 28, 2017
traffic [qmake] Goodbye QMake! Dec 28, 2017
transit [qmake] Goodbye QMake! Dec 28, 2017
ugc [qmake] Goodbye QMake! Dec 28, 2017
xcode Review fixes. Dec 28, 2017
.clang-format [clang-format] Updated clang-format rules for ObjC. Oct 4, 2017
.gitattributes [mopub] [ios] Added Mopub framework. Apr 13, 2017
.gitignore [MAPSME-5825] [ios] Added Xcode schemes to git ignore. Nov 23, 2017
.gitmodules Updated protobuf to 3.3.0 Jul 10, 2017
CMakeLists.txt Removing osrm. cpp, hpp, CMake. Dec 28, 2017
CONTRIBUTORS Update CONTRIBUTORS Nov 20, 2015
LICENSE [docs] Updated license and texts Sep 29, 2015
NOTICE Fixed NOTICE and README. Sep 30, 2015
README.md add screenshots to readme Jan 19, 2017
configure.sh [iOS] Added AppsFlyer Oct 16, 2017
defines.hpp Removing osrm. cpp, hpp, CMake. Dec 28, 2017
strings.txt Fixed wrong string Dec 15, 2017

README.md

MAPS.ME

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.

Submodules

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

Translations

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

Compilation

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.

Development

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.

Feedback

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.