Web front end

From OpenStreetMap Wiki
Jump to navigation Jump to search
OpenStreetMap website
Author: openstreetmap/openstreetmap-website/graphs/contributors
License: GNU General Public License
Website: openstreetmap.org / osm.org
Source code: openstreetmap/openstreetmap-website
Programming language: Ruby

The Rails application that powers OpenStreetMap

The web front-end to OSM (https://www.openstreetmap.org/) includes many features other than the API, including messaging, diaries, friends and many others. This page attempts to document them in some helpful fashion.

Most of the logic of the web front end is in openstreetmap-website, the Ruby on Rails application that powers the API. For a technical big picture view of these things, see component overview. The issue tracker is a round-up of potential changes to the web front end, design, and rest of OSM's architecture.

Front Page Map

See browsing for details.

The front page of OpenStreetMap.org A.K.A "The Map".

  • See Browsing for help on basic browsing the map, and on permalinking etc
  • See Slippy Map for some technical details of how the map display works


Main article: Web front end/Routing

Routing has long been available on other websites, making use of OpenStreetMap data, but it was introduced onto the OpenStreetMap front page in 2015, as an interface calling these external services. See Web front end/Routing

Query features tool

The query features tool lets users click on the map and open the tags for elements near where they clicked. It was introduced in 2014 as explained on this blog post. It is implemented with a call to Overpass API. See query features tool

Data layer

The data layer is a layer you can activate, showing click-able vectors, plus a display appearing in the left side panel. See Data layer.


See Notes.

Data browser

Accessible from the 'Details' links in the data layer, the data browser pages are more simple raw data views on the data, appearing at 'browse' URLs such as https://www.openstreetmap.org/node/15262028 There are pages for every node, way, relation, revealing the location of these things on the map, and listing various information on the left-hand panel. In particular you can see all the Tags on the element.

Currently these data browser pages are blocked from google indexing for performance reasons, although they could potentially be rather good for grabbing google rankings (a local business / street name catalogue)

A 'View history' link reveals a similar display but for each version of the element. This is the wiki-style history of the element, going back over past edits. You can also browse Changesets linked from these element browsing displays, or by using the history button at the top (reveals the changesets taking place in this area of the map)


At https://www.openstreetmap.org/user/new you can create an OSM account. An OSM account is required to edit the database.

Every registered user has a username and a profile page at https://www.openstreetmap.org/user/<username>.

Changeset discussions

See Changeset#Changeset Discussions.

User diaries

User diaries (at https://www.openstreetmap.org/diary ) can be used by mappers to keep track of their work. This serves two primary purposes:

  • It helps the user to keep track of the changes and helps the user document his/her daily activities and data updates. This can be really helpful when there is an isolated user working at an under mapped locality.
  • It helps other users to read each other's experiences, share expertise, and ask questions. It also helps the community members collaborate in a community project.

You can find more information about user diaries here: User diaries


Anyone with an OSM account can click the diary tab and make a new entry describing their activity. For formatting the diary supports "markdown". A diary entry can optionally include a location where the activity has been carried out.

Users can also browse through diary entries of other people using the given link.

User messaging

User messaging feature is built to serve the purpose of communication between the registered users of OSM. Users can send messages to other users through this feature. The messages remain private, so this is similar to sending a one-to-one email.

Messages are viewable on the website with an Inbox and Outbox list display, but they are also sent to the recipient as an email from the website (spam filters permitting). The sender's user name is presented to the recipient, and they are invited to reply via another message on the website. The sender's email address is not revealed, as per Privacy Policy, so you would need to write this into the body of your message if you wanted to get in touch more directly.

Some tools such as JOSM can also notify you when you have unread messages, since this basic count is available via the API (API v0.6#Details of the logged-in user)


You can make friends with each other (similar to facebook and many other sites these days) At the moment this doesn't do a lot, but the following features are available in relation to your set of friends:

  • It does allow you to see the home location of your friends (if they've set it). These appear as blue markers on the map on your user profile page. If you have set your own home location then they will be able to see that. Other users may also be able to see your home location, but only if theirs is very nearby (the green markers). See Nearby users
  • On your profile page you'll also see "friends changesets", and you can visit https://www.openstreetmap.org/history/friends to see a wider overview of this information about edits your friends have been making.
  • On your profile page there's also a link to https://www.openstreetmap.org/diary/friends to see diary entries posted by your friends (a way of filtering down all the diaries)

Permissions and roles

There are currently two roles that a user may have in OSM:

Users in this role are able to manage the roles of other users. There are a very small number of admins.
Users in this role can create temporary blocks on other users, which prevent those other users from using the API. This is a feature to prevent vandalism. Data Working Group members are moderators - see the OSMF wiki for more details. Contact them by email on data@osmfoundation.org.


Administrators can be distinguished by the yellow star to the right of their display name on their user page.


Moderators are able to create either temporary or long-term blocks, giving a textual reason for the block. These blocks are publicly visible, so that members of the community can discuss these issues and blocks in public. In addition to the message, blocks have another two features:

  • Expiry time: the block is for a certain amount of time (currently max. 10 years). This is to give time for dialogue to take place and any damage to the map to be repaired.
  • Require message read: the block is enforced until the user logs in via the web interface and views a message. This is to ensure that users are aware of any reason that their behaviour may be considered unsuitable.

Both features can be combined, expiring only when both conditions are met. Moderators can also revoke blocks, if they turn out not to be necessary any further.

Moderators are also able to both revert changes that have been made but which have then caused issues due to incorrect mapping, vandalism etc; and also redact OSM data, i.e. permanently hide specific OSM elements or certain versions of such.

Moderators are identified by the blue star to the right of their display name on their user page.

More embedded functions

There are several ways to add additional functionality manually via Greasemonkey scripts or browser extensions.

  • Direct links to QA tools via Greasemonkey scripts, e.g. using Achavi changeset viewer
  • Direct link to a raw web editor, see OpenStreetMap Tags Editor via browser extension

Software development, Feature and issue request tracker, Version control