maplibre-rs weekly

Categories: maplibre-rs
Authors: Max Ammann

maplibre-rs is an upcoming and cross-platform vector map renderer written in Rust. If you want to get in touch with the developers visit the chat or our Slack at

๐Ÿ“ฐ News

About one month ago, the MapLibre organisation started to host the maplibre-rs project (formerly known as mapr). I was happy about the opportunity and the support from the Geo community. It seems like I was not the first with the idea of a map rendering engine in Rust. In the discussion #18 a lot of people showed what they have been working on in the past. The maplibre-rs project is the place where we can bundle our efforts to create a new, unique and fun rendering engine.

At about the same time, researchers form the University of Applied Sciences and Arts (HES-SO/HEIG-VD), Switzerland, approached the maplibre-rs project. The maplibre-rs implementation should serve as a proof of concept to show that a true cross-platform experience is possible with WebGPU and Rust.

I’m looking forward what we will create in the following year!

๐Ÿ  Housekeeping

The following will summarizes what happened last week on GitHub.

๐ŸŽ New Features

  • #13, #33 Add support for Gradle
    It’s not possible to easily use maplibre-rs on Android. Sadly only fullscreen is supported right now.
  • #15 Add support for XCode and Swift Packages
    It’s not possible to easily use maplibre-rs on iOS and macOS. Sadly only fullscreen is supported right now.
  • #43 Create a proper web package
    It’s not possible to easily use maplibre-rs on the web via an NPM package.
  • #46 Prepare for publishing on
    Some preparations are finished and maplibre-rs is available here
  • #38 optimize zoom bounds
    Computing some coordinates is faster now.
  • #63 Move platform specific code to web
    Most of the web related stuff lives now in the web crates and no longer in the core crate maplibre.

๐Ÿ”ง Fixes

  • #8 Rename to maplibre-rs

๐Ÿ“„ Documentation

  • #52 Add packaging Documentation
  • #54 Improve the MacOS documentation

๐Ÿงต Current Discussions

  • #18 Looking forward What’s up in the mapping community?
  • #32 Should the map be controlled from rust or from higher level languages? Input handling of maplibre-rs.
  • #49 Introduce yourself! Who are you?

Some architectural discussions:

  • #75 Usage of bevy game engine
  • #60 Requirement of cross-origin isolated
  • #83 Potential memory allocation issues on WASM

๐Ÿ‘‹ New Contributors

  • @Drabble: Thanks, for working on the documentation and testing maplibre-rs on different platforms!
  • @FabianWildgrube: Thanks for experimenting with text rendering!
  • @nyurik: Thanks, for reviews and optimizations!
  • @drwestco: Thanks, for the awesome new logo for maplibre-rs!
  • @vladdoster, @hdevalence: Thanks for improving the documentation!