Package selection guidance compiled from public package information, community data, and project usage.
yandex_mapkit_lite is a lightweight fork of the yandex_mapkit package, version 3.4.0, designed for integrating Yandex Maps into Flutter applications on Android and iOS. It provides essential map functionality with reduced overhead, making it ideal for apps that require map rendering without heavy dependencies. The package maintains core features like map display, markers, and basic interactions while optimizing performance and bundle size. Developed and maintained by surf.ru, it offers a streamlined alternative for developers seeking efficient map integration.
Use cases
Integrating Yandex Maps in mobile apps
Displaying location-based data
Creating map overlays
Lightweight map solutions
Simple navigation interfaces
Key features
Reduced bundle size
Minimal dependencies
Support for Android and iOS
Map rendering and markers
Maintains core Yandex Map functionality
Suitable for
Developers needing a lightweight map solution
Projects with strict size constraints
Apps using Yandex Maps exclusively
Flutter apps targeting Android and iOS
Teams prioritizing performance and simplicity
Considerations
Limited to Yandex Maps ecosystem
No advanced routing or geocoding
Fork may lag behind original package updates
Requires manual dependency management
Not suitable for complex mapping needs
Original README
Original README snapshot from the linked source repository. Visit the repository for the latest content.
Yandex Mapkit Light
Fork of yandex_mapkit library, but lightweight and more appropriate for the majority of the apps.
:earth_africa: Map overview - enables to view the map of the world, with which user can interact with any convenient way, usually in order to demonstrate the location of some place
:house: Custom map objects - enables for developers to add custom map objects in order to indicate some place on the map
:video_game: Convenient map controls - there is an API for straight-to-point map controls through the code - from zooming and moving to limiting user scroll and controlling the speed
:leaves: App bundle size reduction - noticeable app bundle size reduction comparing to projects with original package
:sparkles: Recommended for use if you don't need anything but basic map
Usage
Generate your API Key
Before you can use MapKit SDK in your application, you need the API key.
Specify your API key and locale in your custom application class. If you don't have one the you can create it like so
android/app/src/main/.../MainApplication.java
import android.app.Application;
import com.yandex.mapkit.MapKitFactory;
public class MainApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
MapKitFactory.setLocale("YOUR_LOCALE"); // Your preferred language. Not required, defaults to system language
MapKitFactory.setApiKey("YOUR_API_KEY"); // Your generated API key
}
}
android/app/src/main/.../MainApplication.kt
import android.app.Application
import com.yandex.mapkit.MapKitFactory
class MainApplication: Application() {
override fun onCreate() {
super.onCreate()
MapKitFactory.setLocale("YOUR_LOCALE") // Your preferred language. Not required, defaults to system language
MapKitFactory.setApiKey("YOUR_API_KEY") // Your generated API key
}
}
In your android/app/src/main/AndroidManifest.xml Add necessary permissions:
If your app needs functionality mentioned upper, that is not supported in lite version, consider using full version.
Issues
Minimal versions
There is OS version and platform restrictions for this package. The table for supported platforms and versions of their OS is presented lower:
Android
iOS
Support
SDK 21+
iOS 12+
Localizations
Mapkit can be used with one language only at the same time.
Due to native constraints after the application is launched language can't be changed.
Android
Example
Example project is soon to be refactored.
Hybrid Composition
By default android views are rendered using Hybrid Composition. In order to render the YandexMap widget on Android using Virtual Display (old composition), set [AndroidYandexMap.useAndroidViewSurface] to false before using YandexMap widget.
AndroidYandexMap.useAndroidViewSurface = false;
Terms of use
Disclaimer: This project uses Yandex Mapkit which belongs to Yandex. When using Mapkit refer to these terms of use.
To report your issues, submit them directly in the Issues section.
If you would like to contribute to the package (e.g. by improving the documentation, fixing a bug or adding a cool new feature), please read our contribution guide first and send us your pull request.
Your PRs are always welcome.
How to reach us
Please feel free to ask any questions about this package. Join our community chat on Telegram. We speak English and Russian.