Skip to content

maplibre/awesome-maplibre

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Awesome

Awesome MapLibre

A collection of awesome things that use or support MapLibre!

MapLibre Core projects are designated with a ✅, and hosted projects with a 💙.

Map Rendering

  • ✅ MapLibre GL JS - A map SDK for rendering maps on the Web.
  • ✅ MapLibre Native - A maps SDK for rendering maps on devices, in apps, and on the server.
  • 💙 MapLibre RS - Experimental map rendering library written in Rust.
  • ✅ MapLibre Plugins for Android - A collection of plugins for MapLibre on Android; the annotation plugin is a core project.

Map Styling

Style Editors

Font Glyph Generation

  • 💙 Font Maker - web app to convert font files into SDF fontstacks for use in MapLibre.
  • SDF Font Tools - A CLI tool for generating SDF fontstacks from fonts (similar to FontMaker), as well as crates which let you build fontstacks on the fly (used in MapLibre Martin).

Sprite Generation

  • Spreet - Spreet is a command-line tool that creates a spritesheet (aka texture atlas) from a directory of SVG images.
  • Figmasset - Figmasset is a tool to facilitate bulk-loading assets from Figma into a JavaScript application.
  • Sprite One - Generate sprite image and json without Mapnik.

Navigation & Directions

Bindings

Flutter

React Native

SwiftUI

  • 💙 MapLibre SwiftUI DSL - A Swift package bridging the gap between MapLibre Native and SwiftUI with MapKit-like ease of use.

Jetpack Compose or Compose Multiplatform

  • 💙 MapLibre Compose - a Compose Multiplatform library to add interactive vector tile maps to your Android and iOS app.
  • Ramani Maps - A Jetpack Compose library to manipulate maps on Android.
  • MapLibre Compose Playground - A Jetpack Compose library that takes inspiration from Ramani, but leans towards API similarity with the SwiftUI DSL and de-emphasizes drawing/editing.
  • SKAMIR Maps - Kotlin Multiplatform wrapper for MapLibre Native

Python

Qt (C++)

  • 💙 maplibre-native-qt - MapLibre Native Qt bindings and Qt Location MapLibre Plugin

R

Rust

JavaScript

  • sveltekit-maplibre-boilerplate - A preconfigured template repository develop a MapLibre application in svelte/sveltekit.
  • svelte-maplibre - Provides a Svelte integration.
  • svelte-maplibre-components - A set of maplibre plugins to integrate with svelte/sveltekit. The repository consists of various useful plugins such as export plugin, legend plugin, measure plugin, attribute table plugin, tour plugin, etc.
  • svelte-maplibre-gl - Svelte (v5) component wrapping MapLibre GL JS to provide declarative handling of GL JS through familiar API.
  • @indoorequal/vue-maplibre-gl - Vue 3 plugin for maplibre-gl-js
  • LibreGL - A powerful Vue library for Maplibre with an intuitive API, and a collection of highly customizable components.
  • wtMapbox - Provides a Webtoolkit integration.

Vanilla JS

  • plotly.js - Create analytical geospatial figures with MapLibre GL JS in javascript.

User Interface Plugins

Geocoding & Search Plugins

Map Rendering Plugins

  • 💙 MapLibre GL Leaflet - A plugin for rendering MapLibre styles in Leaflet.
  • deck.gl - Adds advanced WebGL visualization layers.
  • flowmap.blue - Render a geographic flow map visualization from a spreadsheet published on Google Sheets.
  • H3J / H3T - Light H3 data formats for client side geometry generation and rendering using MapLibre GL JS
  • L7-maplibre-gl - Adds large-scale WebGL-powered geospatial data visualization framework to maplibre-gl.demo
  • mapbox-gl-language - Automatically localizes the map into the user’s language.
  • mapbox-gl-rtl-text - Adds right-to-left text support.
  • maplibre-gl-complex-text - Adds support for some complex scripts including Khmer and Devanagari.
  • mapbox-gl-traffic - Hide and show traffic layers on your map with an optional toggle button.
  • maplibre-adiff-viewer – Visualizes OpenStreetMap augmented diffs.
  • maplibre-contour - Renders contour lines from raster DEM tiles in MapLibre GL JS.
  • maplibre-gl-dates – Filters a time-enabled map by date. Optimized for OpenHistoricalMap vector tiles.
  • maplibre-gl-vector-text-protocol - Supports CSV, TSV, Topojson, KML, GPX, and TCX formats using the addProtocol feature.
  • geogrid-maplibre-gl - Renders customizable graticule (geographic grid).
  • maplibre-gleo - Adds symbols using the "gleo" WebGL map rendering library.
  • maplibre-contourmap - Renders contour lines from vector sources in MapLibre GL JS. demo
  • maplibre-three-plugin - A bridge plugin that cleverly connects MapLibre GL JS with Three.js, enabling developers to implement 3D rendering and animation on maps.
  • maplibre-gl-teritorio-cluster - Clustering plugin implementing a MapLibre GL Layer with configurable HTML clustering renderer and support of events.

Layer Types Plugins

  • Allmaps Maplibre - A package for displaying georeferenced IIIF images by loading Georeference Annotations and using WebGL to transform and overlay the images on their correct geographical position.
  • mapbox-gl-arcgis-featureserver - A library for retrieving features from an ArcGIS FeatureServer or MapServer. This library makes tiled requests rather than simply requesting every feature.
  • mapbox-gl-esri-sources - A library for making it easier to use Esri services in MapLibre GL JS. Supports Esri Map Services (dynamic & tiled), Esri Vector Tile Services & Esri Vector Basemap Styles.
  • mapbox-gl-flatgeobuf - A library for retrieving features from FlatGeobuf file using a tiled approach. Compatible with MapLibre GL JS and Mapbox GL JS.
  • mapbox-gl-ogc-feature-collection - A small package for requesting geojson from an OGC Feature API endpoint to serve tiles in MapBox/MapLibre.
  • maplibre-cog-protocol - Custom protocol to load Cloud Optimized GeoTIFFs (COG) in Maplibre GL JS.
  • maplibre-google-maps - A library for integrating Google Maps as raster layers into MapLibre GL JS. It uses the new Google Map Tiles API.
  • ol-maplibre-layer - Render a MapLibre GL JS map as an OpenLayers layer.
  • PMTiles for MapLibre - A library that uses addProtocol to read PMTIles. a single-file format for hosting tilesets without a server or API, just S3 or other storage providers.
  • @naivemap/maplibre-gl-image-layer - A versatile layer for displaying georeferenced images with various projections (using proj4js) on the map.

Utility Libraries

Development Tools Plugins

  • mapbox-gl-framerate - A frame rate control to evaluate map rendering performance.
  • mapbox-gl-fps - A frames-per-seconds GUI control and measurer with statistic report output.
  • mapgrab - A tool for creating end-to-end (e2e) map tests using popular testing frameworks like Playwright, Cypress, and Selenium.
  • maplibre-gl-inspect - Adds an inspect control to view vector source features and properties.

Map/Tile Providers

In bold: Members of the MapLibre Sponsorship Program

Tile Servers

  • 💙 Martin - A PostGIS, MBtiles and PMtiles tile server with support for tile generation and mbtiles tooling.
  • Headless Node Renderer - Headless Node.js MapGL renderer for generating MBTiles with styled raster tiles.
  • chiitiler - chiitiler - "Tiny MapLibre Server" is alternative to Tileserver GL, designed to runs on serverless infrastructures. demo
  • TileServer GL - Vector tile server from MBTiles archives + server-side raster creation with MapLibre GL native.
  • Versatiles - Node and Rust implementation of the versatiles tile server
  • mvt server A simple and high-speed vector tile server (and more) developed in Rust, using the Salvo web framework.
  • BBOX Server OGC API compliant (features, maps, assets, processes, routing) server written in Rust.

Utilities

  • MapBlockly - MapBlockly is a simple and fun way to learn and build Map with Blockly using MapLibre.
  • MapInventor - MapInventor is the visual language built on top of MapBlockly.
  • Ultra - A web-based IDE for making maps with MapLibre, supporting a variety of query & file types such as Overpass, ohsome, GeoJSON, KML, and more. docs
  • Libre-studio - A web-based management layer for Maplibre Martin, allowing the management of map sources, sprites and font glyphs, for ready-to-use custom maps.
  • Mapforge - Open Source map vector layer editor with live collaboration and sharing. Uses MapLibre GL JS.
  • Vector Tile Lab - An interactive sandbox to tune vector tiles.

Users

  • Ace - Free on-course golf scorecard app uses OpenStreetMap data to provide course diagrams, distances, and elevations. Runs entirely in the browser on your mobile phone using MapLibre GL JS.
  • Cartes — French alternative to Google Maps based on a fully open source stack
  • Famxplor, interactive world map of activities for family vacations, powered by MapLibre with Svelte MapLibre
  • Flitsmeister - Navigation app for Android and iOS, with real-time traffic information. Uses MapLibre Native, MapLibre Navigation.
  • Gramps Web (Code) - Modern web app for collaborative genealogy and family history research.
    Features interactive vector maps with location pins, time filters, and historical map overlays.
    Migrated from Leaflet to MapLibre GL JS in the v25.7.0 Release for performance reasons.
  • Herb Atlas (Code) - Collaborative project mapping medicinal herb farms with a focus on sustainable + regenerative practices.
  • Israel Hiking Map has maps, route planning, and travel information for Israel. Migrated to MapLibre.
  • Kibana, a browser-based analytics and search dashboard for Elasticsearch has migrated to MapLibre
  • Kurviger - Motorcycle Routeplanning and Navigation app for Android and iOS. Uses MapLibre Native, MapLibre Navigation.
  • MapLibre Storytelling - a storytelling template using MapLibre GL JS which can be hosted as static HTML or using Node.
  • Mountaya - Interactive 3D maps to understand, explore, and stay safe in the mountain.
  • On The Go Map - A website for planning running and biking routes. Migrated to MapLibre
  • NZ’s authoritative and open digital basemap service for LINZ and the public is using MapLibre
  • OpenHistoricalMap – collaborative project to map the history of the world in detail, powered by MapLibre with maplibre-gl-leaflet
  • OpenStreetMap Americana Style - A quintessentially American map style, powered by MapLibre
  • Peripleo - Reusable web map interface with configurable markers, filters, search and more. Open-source and runs on GH pages, all you need is a spreadsheet.
  • Queering the Map (Code) - A crowd-sourced platform for anonymously pinning queer experiences on a global map.
  • SharpMap, ultra-accurate 2D and 3D topographic mountain maps powered by MapLibre.
  • StreetComplete — Easy to use mobile OpenStreetMap editor used for mapping in the field
  • TatraMap.eu, a 3D map of Tatra Mountains powered by MapLibre.
  • The Wikipedia app for Android uses to display articles with coordinates.
  • TravelerMap.net, a website which allows to explore National Parks
  • Utopia Map - Collaborative map-based app for decentralized coordination and real-life networking.
    Built with MapLibre GL JS, it enables communities to create custom map instances with interactive layers for managing members, activities, and resources.
  • Vremenar Weather, a cross-platform app to display weather conditions and forecast on a map. Using MapLibre Native.
  • Wynd's - Property research website in Australia with flood risk, bushfire risk and school zone maps built with MapLibre JS.

Demos / Examples

About

A collection of awesome things that use or support MapLibre!

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks