MapLibre Newsletter May 2026

Jun 3, 2026

Categories: Newsletter
Authors: Bart Louwers Frank Elsinga Harel Mazor Ramya Ragupathy Stephanie May

Welcome to the May 2026 edition of the MapLibre Newsletter!

Our sincere thanks go out to Komoot for their ongoing support of MapLibre since 2023. Please refer to our Sponsors page for more details on how organizations and individuals can give back to the project. Your contribution will directly help us run the project successfully and keep the community thriving.

Read on for this month’s updates!

MapLibre logoKomoot logo

We are deeply grateful to Komoot for their steadfast support of the MapLibre community since 2023.

📱 MapLibre Native

Memory Optimization: Taking advantage of instancing, Alex Christi managed to significantly reduce the memory usage of fill extrusion layers (see PR). Right now, this is implemented for the Metal backend, with Vulkan following suit thanks to Adrian Cojocaru’s work (see PR). If you are a heavy user of fill extrusion layers, we would love to hear your experience.

Android Renderer: With Vulkan now being the default renderer in MapLibre Android 13.0.0, more people are trying out the Vulkan backend. MapLibre Android 13.2.0 introduced some Vulkan specific bugfixes.

HarmonyOS Ecosystem Expansion: This MapLibre Native PR adds support for a new platform, HarmonyOS, Huawei’s commercial OS competing with Android and iOS in China. It is related to OpenHarmony, an open source project also utilized by initiatives like Oniro.

Cross-Language Bindings: Separately, MapLibre Native FFI (the experimental C API wrapper for MapLibre Native), has made great progress since onboarding last month. It has officially landed Java, Rust, Zig, and Kotlin Native bindings, while filling out its support matrix across macOS, Windows, and Linux using Vulkan, Metal, and OpenGL.

Dave Brophy opened several PRs this month, including an implementation of contour lines based on Raster DEM data. Unfortunately, the PR was closed since we require contributions to have a human in the loop. In practice, this means a feature like this can only be contributed to the core library by someone with a strong graphics background and knowledge of MapLibre Native rendering internals.

Code Integrity & AI Policy

We want the core of MapLibre Native to be stable and maintainable for the long term. This means being judicious in accepting pull requests, especially those written using an LLM. At the same time, we understand that some of our users want to move quickly, and these days that often means using AI to write functionality.

Our Solution: We plan to create a plugin API for MapLibre Native. This will allow developers to extend the library without changing the core codebase. As an example, MapLibre GL JS has a popular contour plugin; in the future, MapLibre Native might have one as well.

🌐 MapLibre GL JS

A lot of performance improvements have been added in our latest pre-releases. Now that we have officially dropped support for WebGL 1, we are looking to modernize our WebGL stack further. Check out the #7640 tracking issue for more details and to follow along.

Help Us Test the MapLibre GL JS v6 pre-releases

We have already implemented most of the breaking changes for the upcoming release, and we hope to ship the new major version soon. To ensure a flawless launch, we are releasing a new version after nearly every PR merge.

Our request to you: Please test the latest pre-releases in your environments and let us know if we broke anything before the major version is released!

For those of you who build MapLibre GL JS locally and ship custom changes, we have great news! We have switched to using Rolldown, cutting our local build times down from minutes to seconds. This is a massive boost to the developer experience!

🤝 We would like to thank all the people who have contributed PRs this month:

Style Specification: Share Your Inputs

A discussion around line opacity and layer opacity in general is currently underway. We want to ensure our future spec design meets real-world developer needs.

Please head over to the tracking thread to share your inputs with us: Discussion #503

🦀 Martin

Nine martin releases shipped across April and May (1.5.0 through 1.10.1), with matching martin-core and mbtiles versions. April is folded in here because no changelog went out at the time.

Key highlights include:

On-the-fly MLT support: The biggest change is MLT (MapLibre Tiles) support. Martin now transcodes MVT to MLT (and back) on the fly, picking the format from the client’s Accept header. On our test fixture, MLT is about 39% smaller on the wire and about 12% faster to serve from cache due to that. Checkout the full guide if you want to dig in.

Server-side raster rendering: Now stable and on by default on Linux builds via MapLibre Native (styles: rendering: true). This closes a massive milestone #978 open since October 2023.

Live source reloading: MBTiles directories hot-reload as of April, COG and PMTiles followed in May, and PostgreSQL groundwork is in place for the PG reload work that comes next.

🤝 Thanks to the community around Martin:

📣 As we scope next steps for server-side raster rendering, we want you to tell us what you’d want from the API (overlays, query params, perf knobs).

☀️ GSoC Spotlight: DuckDB backend! A warm welcome to Manbhav Sugla (@manbhav234), our Google Summer of Code student, whose first PR: #2831 feat: duckdb-source implementation at martin-core, landed in draft and kicks off a brand-new DuckDB source for Martin, with reviews and suggestions welcome.

✨ Community Spotlight

OMT Router: Built by Abel, this fast, zero‑backend library builds routing graphs straight from OpenMapTiles vector tiles to compute optimal routes and isolines entirely in the browser. Dive into the source code or test it yourself on the live interactive demo.

QGIS2VectorTiles: Returning with a major upgrade since its last feature, QGIS2VectorTiles packs a QGIS project into a lightweight package complete with vector tiles, a matching MapLibre style, and a ready-to-use web viewer.

  • Recent updates to the project introduces native MBTiles export, imagery background layers, alpha channel color support, and a redesigned multithreaded export pipeline utilizing the GDAL CLI for faster tile generation. It also vastly expands style conversion (adding symbol-placement, text-variable-anchor, and interactive pop-ups) alongside a brand-new OpenLayers web viewer option.

👥 Conferences & Events

We plan to participate and contribute to sessions at State of the Map US — Madison, Wisconsin between 11-13 June 2026.

Thursday, June 11 (Workshops):

  • Stephanie will guide OSM editors through quick, easy ways to extract OSM data and display it on a map.

  • Yuri will host a hands-on session showing attendees how to spin up their own map service utilizing OSM data and Planetiler.

Be sure to sign up for the workshops and spread the word!

Friday, June 12 (Lightning Talk):

  • Yuri will deliver a rapid-fire lightning talk tracking the latest ecosystem updates across MapLibre and the new MLT (MapLibre Tiles) specification.

🗓️ Monthly meetings

We continue our regular community calls on the second Wednesday of each month, with an additional session on the last Wednesday to better accommodate Asia/Oceania time zones.

Upcoming Calls

  • MapLibre Native: Jun 10, 2026 – 7:00–8:00 PM Berlin Time (UTC+2)
  • MapLibre GL JS: Jun 10, 2026 – 8:00–9:00 PM Berlin Time (UTC+2)

🌏 MapLibre Eastern Call

Held on the last Wednesday of the month at an Asia/Oceania-friendly hour:

  • Jun 24, 2026 – 9–10:00 AM UTC

All calls are open to everyone. Zoom links are shared in the MapLibre Slack. Not yet a member? Request an invite via the OpenStreetMap US Slack and join the #maplibre channel. We’d love to see you there!