Skip to content

Lightweight map tiles for mapeo-mobile for global offline map


Notifications You must be signed in to change notification settings


Repository files navigation

OpenMapTiles Build Status

This is a fork of OpenMapTiles designed for mapeo-mobile. We have removed as many layers as possible to keep disk-size down for a global tileset that can be stored locally for offline map viewing.

OpenMapTiles is an extensible and open vector tile schema for a OpenStreetMap basemap. It is used to generate vector tiles for and

We encourage you to collaborate, reuse and adapt existing layers and add your own layers or use our approach for your own vector tile project. The repository is built on top of the openmaptiles/tools to simplify vector tile creation.


You can start from several GL styles supporting the OpenMapTiles vector schema.

🔗 Learn how to create Mapbox GL styles with Maputnik and OpenMapTiles.

We also ported over our favorite old raster styles (TM2).

🔗 Learn how to create TM2 styles with Mapbox Studio Classic and OpenMapTiles.


OpenMapTiles consists out of a collection of documented and self contained layers you can modify and adapt. Together the layers make up the OpenMapTiles tileset.

🔗 Study the vector tile schema


To work on OpenMapTiles you need Docker and Python.


Build the tileset.

git clone
cd openmaptiles
# Build the imposm mapping, the tm2source project and collect all SQL scripts
# You can also run the build process inside a Docker container
docker run -v $(pwd):/tileset openmaptiles/openmaptiles-tools make

You can execute the following manual steps (for better understanding) or use the provided script.


Prepare the Database

Now start up the database container.

docker-compose up -d postgres

Import external data from OpenStreetMapData, Natural Earth and OpenStreetMap Lake Labels.

docker-compose run import-water
docker-compose run import-natural-earth
docker-compose run import-lakelines
docker-compose run import-osmborder

Download OpenStreetMap data extracts and store the PBF file in the ./data directory.

cd data

Import OpenStreetMap data with the mapping rules from build/mapping.yaml (which has been created by make).

docker-compose run import-osm

Work on Layers

Each time you modify layer SQL code run make and docker-compose run import-sql.

make clean && make && docker-compose run import-sql

Now you are ready to generate the vector tiles. Using environment variables you can limit the bounding box and zoom levels of what you want to generate (docker-compose.yml).

docker-compose run generate-vectortiles


All code in this repository is under the BSD license and the cartography decisions encoded in the schema and SQL are licensed under CC-BY.

Products or services using maps derived from OpenMapTiles schema need to visibly credit "" or reference "OpenMapTiles" with a link to Exceptions to attribution requirement can be granted on request.

For a browsable electronic map based on OpenMapTiles and OpenStreetMap data, the credit should appear in the corner of the map. For example:

© OpenMapTiles © OpenStreetMap contributors

For printed and static maps a similar attribution should be made in a textual description near the image, in the same fashion as if you cite a photograph.