README.md

June 7, 2024 Β· View on GitHub

MapLibre Logo

Flutter MapLibre GL

Interactive, vector-tile, fully styleable maps for Flutter on Android, iOS and Web, powered by the open source MapLibre engines.
Vendor-neutral: host your own tiles or mix providers, no proprietary token required.

Pub Version Likes Pub Points Stars Melos

✨ New: try the package live in your browser and browse the full docs, no setup or API keys required.

Live demo Β Β  Documentation

✨ Quick start

flutter pub add maplibre_gl
import 'package:maplibre_gl/maplibre_gl.dart';

MapLibreMap(
  initialCameraPosition: const CameraPosition(target: LatLng(0, 0), zoom: 2),
  styleString: 'https://demotiles.maplibre.org/style.json',
);

Then head to the getting started guide for platform setup (iOS/Android permissions, the web <script> tag) and to learn how to add markers, layers, offline tiles and more.

Migrating from flutter-mapbox-gl? See the migration guide.

πŸ—ΊοΈ Feature support

Engines: maplibre-native (Android/iOS), maplibre-gl-js (Web). Only a subset of native SDK APIs is exposed, PRs to extend coverage are welcome.

FeatureAndroidiOSWeb
Style, Camera, Gestureβœ…βœ…βœ…
User Locationβœ…βœ…βœ…
Symbol / Circle / Line / Fillβœ…βœ…βœ…
Fill Extrusionβœ…βœ…βœ…
Heatmap Layerβœ…βœ…βœ…

See the full feature matrix for details.

πŸ€“ Contributing

dart pub global activate melos
melos bootstrap

This is a melos workspace (maplibre_gl, maplibre_gl_web, maplibre_gl_platform_interface). Layer/source helpers are generated, don't edit them directly; run melos run generate && melos format-all. See CONTRIBUTING.md before opening a PR, and the architecture docs for an overview.

This project is a fork of flutter-mapbox-gl. ❀️

Example app Β· API reference Β· Changelog Β· Discussions Β· Issues Β· Slack

πŸ’ Contributors

A huge thanks to everyone who has contributed to this project!

Contributors

License

See LICENSE.