Every SDK needs an API key (a web key for the web, a mobile key for apps). Create one in the Console.
Web
@atasu/maps-glVersion 0.1 · npmThe Web SDK on MapLibre GL JS 6: map session and tile token, Kazakh / Russian / English labels, day and night, search and routing.
npm install @atasu/maps-glimport { AtasuMap } from '@atasu/maps-gl';
import '@atasu/maps-gl/maplibre-gl.css';
const map = await AtasuMap.create({
container: 'map',
apiKey: 'atk_live_…',
language: 'kk', // 'kk' | 'ru' | 'en'
theme: 'auto', // 'day' | 'night' | 'auto'
center: [76.95692, 43.24313],
zoom: 15,
});
map.setLanguage('ru');Web SDK guide, samples and API reference · Quick start
Example project: examples/basic
Android
com.atasumaps:atasu-maps-androidPreview · Maven Central in BetaThe Android SDK on MapLibre Native, for Jetpack Compose and Views. Android 8.0 (API 26) or newer.
// settings.gradle.kts
dependencyResolutionManagement {
repositories { google(); mavenCentral() }
}
// app/build.gradle.kts (minSdk 26)
dependencies {
implementation("com.atasumaps:atasu-maps-android:0.1.0")
}// Application.onCreate
AtasuMaps.configure(this, apiKey = BuildConfig.ATASU_API_KEY,
language = AtasuLanguage.KK, theme = AtasuTheme.AUTO)
// Jetpack Compose
AtasuMap(Modifier.fillMaxSize()) { map -> /* map.maplibre … */ }
AtasuMaps.setLanguage(AtasuLanguage.RU)Example project: com.atasumaps.sdk.example — atasu-sdk
iOS
AtasuMapsPlanned for BetaThe iOS SDK will be a Swift package published from its own release repository.
// Package.swift
dependencies: [
.package(url: "https://github.com/atasumaps/atasu-maps-ios", from: "0.1.0")
],
targets: [
.target(name: "MyApp", dependencies: [.product(name: "AtasuMaps", package: "atasu-maps-ios")])
]Attribution
The SDKs show the data attribution on every map: expanded when the map opens, then behind an ⓘ that shows it again. It cannot be turned off. Each package ships with its third-party license list.