MapLibre for Python

MapLibre for Python provides Python bindings for MapLibre GL JS.
Furthermore, Deck.GL Layers can be mixed with MapLibre Layers.
It integrates seamlessly into Shiny for Python, Marimo, Jupyter and JupyterLite.
Join the conversation
Join us on Slack.
Installation
pip install maplibre
pip install "maplibre[shiny]"
pip install "maplibre[ipywidget]"
pip install "maplibre[all]"
uv add maplibre
uv add "maplibre[all]"
pip install git+https://github.com/eoda-dev/py-maplibregl@dev
pip install "maplibre[all] @ git+https://github.com/eoda-dev/py-maplibregl@dev"
uv add "git+https://github.com/eoda-dev/py-maplibregl@dev[all]"
conda install -c conda-forge maplibre
Quickstart
from maplibre import Map, MapOptions
m = Map(MapOptions(center=(-123.1256, 49.24658), zoom=9))
m.save(preview=True)
Documentation
Development
Python
poetry install
poetry run pytest
poetry run pytest --ignore=maplibre/ipywidget.py --doctest-modules maplibre
JavaScript
See maplibre-bindings