MapLibre GL JS

Open-source TypeScript library for publishing maps on your website. Fast displaying of maps is possible thanks to GPU-accelerated vector tile rendering.

MapLibre GL JS originated as an open-source fork of mapbox-gl-js and MapLibre GL JS v1 is fully compatible with Mapbox GL JS v1. This allows you to easily migrate existing Mapbox v1 solutions to MapLibre.

Starting with MapLibre GL JS v2, compatibility is not guaranteed anymore which gives us the freedom to take the library to new directions and lets people shape it more directly.

MapLibre Native

Open-source SDK for Android and iOS allowing displaying maps inside of your mobile applications, desktop application, or embedded devices. This toolset grants fast maps displaying in iOS and Android apps using the same GPU-based acceleration as the TypeScript version.

MapLibre Native is an open source fork of mapbox-gl-native.

Starting is 2023, we plan to overhaul the library and complement the existing OpenGL rendering backend with a Metal rendering backend for fast and efficient rendering on iOS devices. The overhaul is a great opportunity for you to learn more about the library and get involved with the MapLibre community.

More information can be found in the following design proposals:


maplibre-rs, an experimental project, is a portable and performant vector maps renderer. We aim to support web, mobile and desktop applications. This is achieved by the novel WebGPU specification. Plenty of native implementations are already implementing this specification. On the web, it is implemented by Firefox, Chrome and Safari. There are also standalone implementations that directly use Vulkan, OpenGL or Metal as a backend. Those backends allow maplibre-rs to run on mobile and desktop applications.

Rust is used as a Lingua-franka on all platforms. This is made possible by WebAssembly, which allows us to use Rust for web development.

The goal of maplibre-rs is to render maps to visualize data. Right now the goal of maplibre-rs is not to replace existing vector map renderers like Google Maps, Apple Maps or MapLibre. The current implementation serves as a proof-of-concept of the used technology stack. It is unclear whether the high-performance requirements of rendering maps using vector graphics are achievable using the current stack.


Martin is a tile server able to generate vector tiles from large PostGIS databases on the fly, or serve tiles from PMTile and MBTile files. Martin optimizes for speed and heavy traffic, and is written in Rust .

Additional Projects

Binding for additional languages (such as React.js, Vue, Flutter) and external libraries.