2026-09-02 –, Dahlia1
Maplibreum: framework that makes the creation of web maps quite easy in a Python environment, making it well suited for interactive tools. Similar to Folium, but using the ever-growing MapLibre instead of Leaflet. I will present my motivations and the development of this new contribution to the FOSS4G community!
As a cartographer, I began my career already in the digital era, and I have always been fascinated by beautiful web maps and their power to reveal data insights that go far beyond traditional paper-based cartography. Naturally, I became interested in creating my own.
My first attempt was with the qgis2web plugin, which introduced me to Leaflet and OpenLayers. I quickly realized that if I truly wanted to go beyond templates, I would need to learn how to code it. Although I had some programming experience, I considered myself — and still consider — an average developer. JavaScript felt intimidating at the time (this was the pre-AI era, when Stack Overflow was the primary lifeline).
During that period, Jupyter Notebooks and Google Colab were becoming very popular, and that’s when I discovered Folium. It was love at first sight. With just three lines of Python code, I could generate a full-fledged HTML file containing all the JavaScript, CSS, and markup that previously felt so foreign to me.
From there, I started exploring the colorful world of interactive features: clickable tooltips with charts, hover highlighting, search bars — the full package. I built my first prototype for a project called OpenSidewalkMap, which focused on sidewalk geometries. I began with a small dataset — just eight street blocks — and it looked absolutely beautiful.
But who wants only eight blocks when you could map an entire city?
That’s when I learned about scaling. To handle large datasets efficiently, you need tiles — vector tiles, specifically. And that’s when the tiling nightmare began. Leaflet is fantastic, but vector tiles are not exactly its strongest feature. I experimented with several adaptations, none of them fully satisfying.
By that point, I had already heard about MapLibre and its highly optimized rendering engine. I also discovered the relatively new PMTiles format, which fit perfectly with many of my projects and integrates seamlessly with MapLibre. So I migrated.
Today, I write MapLibre code "directly". But what about the “old Kaue,” who just wanted to create a web map with three lines of Python?
That question led to MapLibreum.
Well — not exactly me alone. If you look at the official Folium repository, you’ll see more than 160 contributors. Building something similar as a solo developer would be unrealistic. So I took a different path: I used AI agents to help me do the work.
What started as pure curiosity — a side project I would never otherwise have had time to pursue — evolved into an important laboratory for learning how to effectively use AI agents in large, real-world projects.
And in our presentation, I’ll tell you all about it.
Project Repository: https://github.com/kauevestena/maplibreum_prototype
Project documentation: https://kauevestena.github.io/maplibreum_prototype/
- python/ipython/jupyter
- jinja
- Maplibre
- Geopandas (therefore GDAL, GEOS...)
My name is Kauê de Moraes Vestena, I'm a Cartographer and PhD in Geodetic Sciences, but mainly I'm a big enthusiast of Open Source software, being a linux user since 2014, same year for OSM. I've participated on previous FOSS4G (2022, 2023, 2024) and I simply loved getting to know the community!