Protomaps Blog

Protomaps receives NLnet open source grant

The Protomaps open source project is a recipient of a NLnet open source grant! This grant is part of the NGI (Next Generation Internet) initiative of the European Commission.

Motivation

The goals of the NGI Zero Core initiative are to develop alternatives and improvements to core internet hardware, software and protocols, in order to remove gatekeepers, choke points and surveillance capabilities on the web.

Maps are everywhere on the Internet. Think of any popular retail site, travel search or local government portal. The infrastructure of the web, from languages like JavaScript, front-end frameworks, and databases, is overwhelmingly free software. Maps are one of the few remaining choke points of an otherwise open web. Developers are locked-in to proprietary vendors like Google Maps; worse, all web traffic is leaked to third party APIs, creating problems for privacy and GDPR compliance.

The Protomaps project isn’t a hypothetical idea - you can use it right now to deploy a world map as a single file, with none of the typical complications of self-hosted networked software.

Our NLnet grant will focus on enhancing key parts of Protomaps to advance maps on the open web, resulting in software distributed under a standard FOSS license, to be built upon and reused freely.

Maps for the Public Sector

The focus of our initial grant is enhancing the viability of Protomaps for public sector use. This aligns with European mandates for open source software in government, and hopefully helps erode de facto monopolies on public sector GIS by large corporations.

The general-purpose “base layer” component of Protomaps is downstream of OpenStreetMap. This grant will make OSM-based apps simple to deploy for local governments, including key data layers like points of interest. The current daily build channel lets public improvements to OSM appear on tilesets within 24 hours.

Localization

A key requirement of public sector use is localization: displaying maps in the local language, or even multiple written languages. Multilingual audiences, especially in countries with many official languages like Belgium, are underserved by technology companies that focus on commercial use in North America and the English-speaking world. Notably, The MapLibre GL map rendering library, an open source fork of Mapbox GL JS, does not support writing systems of South and Southeast Asia. This presents a barrier to open source adoption for users in countries like Nepal and India.

Project contributor Oliver Wipfli has created a proof-of-concept Nepali map on GitHub:

You can see Brandon’s presentations at State of the Map 2021 and FOSS4G Asia 2023 covering localization for map rendering.

Security & Privacy

The basic Protomaps deployment pattern is static files, taking advantage of HTTP Range Requests. Since this design requires no specialized server software, it can rely on mature, secure HTTP servers like nginx or Caddy. Cloud storage deployment options can satisfy requirements for placing data in specific jurisdictions.

As part of the NLnet grant program, the Protomaps open source system is undergoing a security audit by a third party firm. This will cover the server and command line tools, as well as documented best practices for public sector deployments.

Collaborators

The best part of the NLnet grant program: it’s open to individuals or companies anywhere in the world, not just those in the EU! Our small team of independent developers for this grant:

  • Brandon Liu - lead developer of Protomaps project, based in Taipei, Taiwan - maintainer of PMTiles open format and ecosystem.

  • Oliver Wipfli - contributor to MapLibre project, based in Zürich, Switzerland; researching WebGL-accelerated multilingual text for maps.

Read More

You can view a list of hundreds of NLnet-funded projects on their website.