Back to Programs

Data

OpenStreetMap

Create and distribute free geodata for the world

c++javajavascriptpythonrustdevopsdockerglTF

Participation history

11 GSoC years

2026

5 projects

Official year page

Category Support in Nominatim

Nominatim currently classifies places using a single OSM class/type pair, which causes duplicate database entries for multi-tagged objects, fragile...

DuckDB Backend for Martin TileServer

This project aims to provide first-class DuckDB support for Martin TileServer. DuckDB, with its spatial extension and native ST_AsMVT and and...

Enhance Pedestrian Routing

The majority of mapped sidewalks in OSM lack explicit names, which makes Valhalla generate vague pedestrian routing instructions. This project aims...

Automated Routing QA: A Regression Testing Framework for Routing & Guidance Quality in Valhalla

Valhalla currently lacks a scalable way to detect routing and guidance regressions introduced by pull requests. This project builds a three-component...

Make closures.osm.ch Production Ready

closures.osm.ch is a community-driven platform for reporting temporary road closures in real-time, built during GSoC 2025. It is not yet...

2025

5 projects

Official year page

Nominatim: Transliteration of Search Results

OpenStreetMap (OSM) commonly stores names of streets, places, and points of interest in their local language and script. As a result, users searching...

Temporary Road Closures Database and API

The Temporary Road Closures Database and API project addresses a critical gap in the OpenStreetMap (OSM) ecosystem by creating a centralized,...

Modernize the 3D Model Repository

3DMR is a community-driven repository for 3D models and their metadata, designed to enhance 3D map rendering. It was originally developed during...

Modernize iD Editor Session Management with IndexedDB

The iD Editor is a powerful tool used by thousands to contribute to OpenStreetMap, but its current session management system relies on localStorage,...

Ferrostar - Navigation Recording, Replay & Snapshot Testing

This project aims to enhance Ferrostar by implementing a session recording and replay system for debugging and testing navigation flows. The system...

2024

4 projects

Official year page

Colorblind-Friendliness Assessment and Adjustment Plugin for MapLibre Maps

The project aims to enhance accessibility for users with color vision deficiencies (CVD) by developing a npm package. It analyzes color combinations...

Formatted citations in OpenHistoricalMap

The OpenHistoricalMap project aims to give a temporal aspect to mapped information, adding the possibility to see maps during specific points in...

Support navigation in PWAs for Ferrostar

Idea based on https://wiki.openstreetmap.org/wiki/Google_Summer_of_Code/2024/Project_ideas Ferrostar is the new cross-platform turn-by-turn...

"Support display of images from Panoramax in iD"

Panoramax would make a priceless addition to the OpenStreetMap (and FOSS in general) community: the panoramic view feature improves map exploration...

2023

4 projects

Official year page

OSRM Python Bindings

Develop Python bindings to the OSRM C++ framework using pybind11, with the end goal of publishing the package to PyPI. This would allow OSRM to...

Landmark-based Navigation in Valhalla

The aim of this project is to enhance Valhalla's route guidance by enabling landmark-based navigation/narration, which will utilize OpenStreetMap's...

Improving Japanese Search Capability: Adding Japanese Morphological Analysis Functionality

Japanese addresses are unique and have a different system compared to other countries. The address format is in block style, and is different from...

Support Vespucci preset extensions in JOSM

Vespucci, the Android editor for OpenStreetMap, uses the JOSM-compatible presets for tagging. Vespucci, however, has evolved to support far greater...

2022

4 projects

Official year page

Re-Introducing Transit Routing Support to Valhalla

Valhalla is a routing engine built on OpenStreetMap data, that allows for high flexibility by providing diverse routing modes and routing filters....

Geo-referenced image viewer in OSM

Problem: A popular way of taking notes while mapping is by taking pictures. But in order to efficiently use those notes, the pictures should be shown...

Nominatim - Importance by OSM map views

Nominatim is OSM’s own geocoding software. When a user is searching for a specific place, Nominatim returns multiple results that are likely to be...

Proposal for JOSM Route Visualisation

This plugin enhances the visualization of routes to make it easier for users to edit routes. The code improves the interface for interacting with...

2021

4 projects

Official year page

Interface for reporting search bugs for Nominatim

Currently, there is no standard platform where users can report bugs when they are working with Nominatim. Generally, if a user wants to report a...

Opening hours tag evaluator

As noted by SimonPoole, the current opening hours parser lacks a complete evaluator for its input opening hours. This project will center around...

Nominatim QA Analyser

Nominatim is a software used to process geocoding requests on OpenStreetMap data. The software uses its own database schema which differs from the...

Element History Widget

This will be a standalone library to display multiple versions of any selected OSM element and allow comparison between the different versions.

2020

4 projects

Official year page

Simple Indoor Tagging Support for OSM2World

Whilst OSM2World currently renders buildings, street furniture and other outdoor objects in 3 dimensions there is no functionality to do this for...

Fix and Improve Mapillary Plugin for JOSM

Mapillary plugin is used to extract street-level imagery so they can be used for better editing in JOSM. Currently the basic implementation of the...

Adding Search suggestions for osm.org

OSM’s main search engine Nominatim does not support search suggestions. A separate database, which should be derived from the Nominatim database,...

BIM Import for IndoorHelper Plugin

The idea of this project is to extend the existing JOSM Plugin "indoorHelper" by an import feature for Building Information Modelling (BIM) files....

2019

5 projects

Official year page

HOT Task Manager Integration

Many OSM contributors are guided by mapping tasks, such as HOTOSM tasks for disaster relief and humanitarian projects. Even though the iD editor is...

PT_Assistant plugin

Currently the Public Transport Assistant has been able to achieve a lot of success in validating the route data in OpenStreetMap but there are still...

Tool to Generate Bounding Nodes for Buildings and Quality Assurance

I have been using JOSM to add cartographic data about my university. My university has a lot of buildings with complex shapes that can be difficult...

3D Traffic Sign Rendering in OSM2World

OSM2World is a converter that renders 3D models of the world, based on exported OpenStreetMap data. As the project is still under construction and...

OpenStreetMap - Implement Add Wikidata to Nominatim

The goal of this project is to extend the existing Nominatim Wikipedia extraction scripts to take into account Wikidata. The Wikidata project...

2018

5 projects

Official year page

iD Editor : Support for vector tile data

iD currently uses publicly available reference data when editing OpenStreetMap. This data is often in the form of raster tiles (aerial imagery...

Extend wikipedia plugin for JOSM, especially with regard to wikidata

Adds extended validation for wikidata/wikipedia tags, all integrated with the standard JOSM validator. The plugin will show the main information that...

Adding Notes to iD Editor

Notes help users and editors understand what needs to be fixed. Adding notes to the iD editor allows editors to see descriptions of issues for an...

OSM Public Transport Editor-2nd Part

I plan to enhance the public transport web editor developed by David Kocich in GSoC’17. The proposed project will add more editing functionality and...

Continued development of Public Transport Assistant

The project proposes to make the Public Transport Assistant more reliable, work properly with all forms of transport and help assist a mapper in a...

2017

5 projects

Official year page

3D Model Repository for OpenStreetMap

This proposal consists of the implementation of a 3D model repository for OpenStreetMap, improving upon the basic system offered by the Simple 3D...

Enhancement of the pt_assistant plugin

During last year's GSoC, the pt_assistant plugin has been developed by Darya Golovko. My goal is to further develop the plugin making small fixes and...

Public transport - Web editor for public transport routes

This is the proposal for the project idea shared on OSM wiki page https://wiki.openstreetmap.org/wiki/Google_Summer_of_Code/2017/Project_Ideas...

libosmscout: Implementation of an opengl renderer

Currently there exists a great variety of OSM map rendering libraries, but a fast offline OpenGL based library is needed. libosmscout offers offline...

[JOSM] UI enhancements and Main menu refactoring

JOSM is a great editor for OpenStreenMap. It provides a rich set of functionality to allow its users a fluent way of managing data. Currently, some...

2016

4 projects

Official year page

Visual Lane Editor for iD

This proposal seeks to add a visual lane editor to iD. This lane editor must fit in 350px wide side pane of the editor and should be similar to the...

Improved Shaders for OSM2World

OSM2World provides an excellent tool for converting OSM data to 3D models. It however lacks in visual fidelity, which can make it off-putting to use...

Public Transport Assistant Plugin for JOSM

With the existing implementation, mapping and editing public transportation routes is a labor-intensive task, which demotivates mappers. The...

Reorganizing JOSM core

I propose to restructure the JOSM core classes to be more flexible. This also allows us to separate different components of JOSM and change the...