>_ DevTrendsen

Language

Home

Languages

Sections

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Embedded Security
Kotlin

How to Turn a Walk into a Commit and Help OpenStreetMap Without the Pain

Have you ever been walking around your neighborhood, noticing that your favorite coffee shop has closed, but it's still showing on the maps? Or that a great playground was installed in your courtyard, but the navigator shows nothing there? Usually, that's where the thought process ends: diving into the depths of OpenStreetMap (OSM) editors with their tags, layers, and specific syntax is a dubious way to spend a weekend evening.

The StreetComplete project changes the game. It's an Android app that turns map data refinement into a series of simple quests. It doesn't require you to be a GIS specialist or know how amenity=cafe differs from shop=coffee.

StreetComplete

What It Is and Why You Need It

StreetComplete is an open-source OSM editor designed specifically for field conditions. The core idea is that you don't draw building or road geometry (that's easier to do at a monitor), but instead populate the map with attributes.

The problem with most maps is that they quickly become outdated in the details. Street names change rarely, but things like tactile paving at crosswalks, the surface type of a park path, or the opening hours of a small shop — these change constantly. StreetComplete finds such "blank spots" and offers users to fill them in.

How Quests Work

When you open the app, it downloads data about your current location and places quest icons on the map. Each quest is a specific question.

For example:

  • Does this building have a number?
  • What surface does this road have: asphalt, gravel, or paving stones?
  • Is this crosswalk equipped with an audible signal?
  • Does this entrance have a wheelchair ramp?

You simply select the appropriate option in the interface or enter text, and the app itself forms the correct changeset and sends it to the OSM database on your behalf. No messing around with XML or complex tagging schemes.

Technical Side of the Project

The project is written in Kotlin and is actively developed. Interesting things in the repository:

  1. Quest architecture. Each quest is a separate module that describes the logic for when the question appears (SQL-like filter by existing tags) and the answer form.
  2. Offline work. The app caches data, so you can calmly go into the forest to map tree types or trail surface types, and upload your edits later at home via Wi-Fi.
  3. AR measurements. Recent versions added the ability to measure building heights or road widths using augmented reality.

By the way, the developers are currently actively porting the project to multiplatform so that StreetComplete finally appears on iOS as well. This is a big chunk of work that you can follow in the repository's tickets.

Why Developers Should Take a Look

If you're looking for a project to contribute to, StreetComplete is a great candidate. First, it has a very clear structure. Second, the entry barrier is low: you can start with translating the interface or creating a simple quest.

For those who just want to do some good: it's the fastest way to make OpenStreetMap better. Unlike proprietary maps, OSM data belongs to everyone. Your edits will end up in Maps.me, Organic Maps, OsmAnd, and thousands of other services.

Who Will Find This Useful

The app will appeal most to those who walk a lot or ride a bicycle. It turns a routine commute into a small game.

Of course, there are limitations. You won't be able to add a completely new object that isn't on the map yet (for example, a house that was just built). For that, you'll still need to use a full-featured editor like JOSM or iD. But for "tidying up" and updating data in your neighborhood, StreetComplete has no equal.

You can download the app from Google Play or F-Droid. If you want to dig into the code or propose your own quest, check out the repository on GitHub. The project is alive, commits come in daily, and the community is happy to help newcomers.

Related projects