OSPP 2024 Project: Frontend technology based OpenStreetMap PT relation editor

Posted by OSMChina on 5/19/2024

We participated in the OSPP hosted by the Chinese Academy of Sciences, which stands for Open Source Promotion Plan. It is held during the summer every year and encourages students of all grades to contribute to open source projects from July to September. This is very similar to GSoC.


OpenStreetMap is a map project initiated in 2004 by Steve Coast of the UK, based on the principle of knowledge openness. Its data model enables mappers to represent and abstract complex real-world structures by utilizing three abstract elements types, for instance, public transportation. Since 2016, the OSM Community has submitted projects related to public transport to GSOC annually. The main work is focused on a JOSM plugin called PT Assistant.

Currently, the project we initiated aims to develop a cross-platform editor utilizing a modern front-end technology stack, which is easy to use with clear interactions.

Why do we need this project?

When editing public transportation relations using iD or JOSM, you may often spend a lot of time on tasks such as selecting each segment from the starting point to the endpoint. You might be surprised to find that even at an intersection where you want to turn, the continuous straight line has not been broken for your selection.

We hope to reduce such energy consumption thing for mapper when editing public transportation by automatically calculating possible bus routes through short-distance navigation after mappers specify the stations along the way. The mapper can then fine-tune it so that it conforms to the actual route taken by buses.

At the same time, we also hope to save time in certain situations, such as when creating a group of bus stops with identical names. There is no need for manual maintenance of multiple bus stop signs composed of relations; they will be automatically matched for you. Or when moving a station sign, parking spots are moved automatically.

Overall, our goal is to reduce friction and make it easier and faster for people to create new bus lines.

Project Deliverable Requirements

  • Ability to add stations and create or delete route relationships (with variable member order) within the editor and upload them via OSM API 0.6.
  • Ability to automatically calculate viable routes based on the road network and control points in the map, and automatically split longer paths for easier relationship addition, when only station data is available.
  • Implementation of at least a prototype containing the main functionalities.

Project Technical Requirements

  • Ability to use front-end technology stack to develop complex interface cross-platform programs, with knowledge of WebGL. (Experience with WebGL GIS frameworks such as Cesium.js/MapboxGL is a plus) (Note: Depending on the final choice of technology stack, knowledge of graphics and WASM might be required. She has always admired Meta for being able to create RapiD.)
  • Adequate algorithmic skills, with some understanding of navigation algorithm implementation. (Experience with open-source navigation routing tools like OSRM, Graphhopper, Valhalla, etc., is a plus.) (Note: Actually not such important.)
  • Understanding of the OpenStreetMap data model and API. (Knowledge of community culture and collaboration methods, or previous use of related data for analysis or other purposes, is very important.) (Note: Actually not such important. Since it is a notice posted in the OSM website, we can assume that applicants who see this requirement are already very familiar with it.)

Some important notes

  1. The project language is Chinese and some materials that need to be submitted later are also in Chinese. However, if there are any unclear points about the application, community members can provide language assistance and you can still communicate with your mentor in English.
  2. Although as the mentor, a very ashamed thing is that laoshubaby isn’t very proficient in front-end; this arrangement was originally aimed at students who have no knowledge about OSM whatsoever. Therefore she was chosen as a mentor due to being an active community member.
  3. For non-Chinese students receiving bonuses may take longer - possibly until January or February 2025 - rather than being paid upon completion of their projects. This bonus does not come from OSMChina or TUNA but from OSPP’s sponsor CAS (Chinese Academy of Sciences).
  4. The deadline for student applications is June 3, 2024 at 7:00 AM UTC. The complete guide for students participating in the project can be found at https://summer-ospp.ac.cn/help/en/student/#5-student-bonus (If your browser’s locale cannot be detected, you can click on the “中文/EN” button in the upper right corner of the webpage to switch languages.)

Registed information on OSPP

OSMChina (with the help of Tsinghua University TUNA Association and special thanks for their valuable assistance and support.)