Skip to content
Make with

MapLibre Native SlintOfficial

MapLibre Native in Slint apps

Maintained by MapLibre

A reusable Slint map component (MMapView) and a C++ backend library you link from your own CMake app. It renders with WebGPU by default, with an OpenGL path that hands Slint a GL texture directly. The project calls itself a working reference rather than a packaged SDK: there are no versioned releases yet, so you pull it in with FetchContent at a pinned commit.

Quick start

include(FetchContent) FetchContent_Declare( maplibre-native-slint GIT_REPOSITORY https://github.com/maplibre/maplibre-native-slint.git GIT_TAG aac49b8fe3c1798e2b276f7c38a43e57e54f604f ) FetchContent_MakeAvailable(maplibre-native-slint) add_executable(my-app main.cpp) slint_target_sources(my-app my.slint LIBRARY_PATHS maplibre-native-slint=${maplibre-native-slint_SOURCE_DIR}/src) target_link_libraries(my-app PRIVATE maplibre-native-slint::mbgl-slint)
import { MMapView } from "@maplibre-native-slint/maplibre.slint";

export component App inherits Window {
    preferred-width: 800px;
    preferred-height: 600px;

    map := MMapView {
        style-url: "https://tiles.openfreemap.org/styles/liberty";
        center-lat: 35.6895;
        center-lon: 139.6917;
        zoom: 10;
    }
}
›Setup noteschecked with vaac49b8 (2026-09-06)

There are no releases yet, so pin a commit in FetchContent. The .slint file declares the view; your main.cpp still connects the MMapAdapter callbacks to the backend, and the README says to start from a copy of cpp/main.cpp. It builds MapLibre Native from source, renders with WebGPU by default (OpenGL is an option), and runs on Linux, Windows, and macOS.

Other platforms are on SDKs.