Open-source unified map SDK

Write your map code once.
Choose the provider later.

MapConductor is a unified map SDK that puts the major map providers behind a single API — 13 today, and still growing. Swap providers without rewriting your application logic.

Apache-2.0 · Android, iOS & React available
MapView.ktKotlin
// provider は設定で差し替え
MapView(onMapClick = { }) {
    for (s in markerList) {
        Marker(state = s)
    }
}
PROVIDERS
13
PLATFORMS
3+
LICENSE
OSS
MARKERS
1000s
SDK family
One API design, more platforms over time

Every SDK shares the same concepts and API names, so a new platform never means relearning the model.

Available
Android
Jetpack Compose

A declarative MapView for Jetpack Compose, covering eight providers — Google Maps, Mapbox, HERE, ArcGIS, MapLibre, MapTiler, TomTom and Longdo.

Available
iOS
SwiftUI

The same structure for SwiftUI, with nine providers including Apple MapKit.

Available
React
TypeScript · Web

A unified API for the web, including web-only engines such as Leaflet and Cesium.

(Documentation coming soon)
Supported providers

Switch providers through configuration while your application code stays the same. Coverage grows per platform, so contracts and pricing can change without a rewrite.

Provider
Android
iOS
React
Google Maps (2D/3D)
MapLibre
Mapbox
HERE Maps
ArcGIS (2D/3D)
Apple MapKit
TomTom
MapTiler
Leaflet
OpenLayers
Azure Maps
Cesium
Longdo
Supported
Not yet
Capabilities
01

Multi-SDK support

Drive Google Maps, Mapbox, HERE and ArcGIS from a single codebase.

02

Unified map API

Markers, shapes, camera control and events share one common model.

03

Reuse your logic

Change map providers without rewriting application logic.

04

High-performance rendering

Built-in clustering and diffing keep thousands of markers smooth.

05

Modern UI first

Designed for the declarative workflows of Jetpack Compose and SwiftUI.

06

Open source

Published under Apache-2.0 — read the implementation and extend it yourself.

Architecture

Your app depends only on the unified layer. Adapters absorb provider differences, so switching stays a configuration change.

Application layer

Compose / SwiftUI / React

MapConductor unified API

MapView · Marker · Camera · Events

Provider adapters

Google Maps · Mapbox · HERE · ArcGIS
Demo

The same implementation running against different providers.

Android · rendering a large marker set
Developer community

We publish development progress, releases and talks on Discord. Design feedback and bug reports are welcome.

Join Discord
GitHub