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.
