Skip to content

A collection of awesome things that use or support MapLibre!

License

Notifications You must be signed in to change notification settings

maplibre/awesome-maplibre

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

94 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

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

  • 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.

Python

Qt (C++)

  • πŸ’™ maplibre-native-qt - MapLibre Native Qt bindings and Qt Location MapLibre Plugin

R

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.
  • 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.
  • mapbox-gl-traffic - Hide and show traffic layers on your map with an optional toggle button.
  • 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.

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-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.

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, supports 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 rasterizing with MapLibre GL native.

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

Users

  • Kibana, a browser-based analytics and search dashboard for Elasticsearch has migrated to MapLibre
  • Israel Hiking Map has maps, route planning, and travel information for Israel. Migrated to MapLibre.
  • MapLibre Storytelling - a storytelling template using MapLibre GL JS which can be hosted as static HTML or using Node.
  • OpenStreetMap Americana Style - A quintessentially American map style, powered by MapLibre
  • 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
  • Vremenar Weather, a cross-platform app to display weather conditions and forecast on a map. Using MapLibre Native.
  • TatraMap.eu, a 3D map of Tatra Mountains powered by MapLibre.
  • TravelerMap.net, a website which allows to explore National Parks
  • The Wikipedia app for Android uses to display articles with coordinates.
  • Queering the Map (Code) - A crowd-sourced platform for anonymously pinning queer experiences on a global map.
  • OpenHistoricalMap – collaborative project to map the history of the world in detail, powered by MapLibre with maplibre-gl-leaflet
  • Famxplor, interactive world map of activities for family vacations, powered by MapLibre with Svelte MapLibre
  • StreetComplete β€” Easy to use mobile OpenStreetMap editor used for mapping in the field
  • Cartes β€” French alternative to Google Maps based on a fully open source stack