OpenStreetMap логотибы OpenStreetMap

Enriching OpenStreetMap.org website with Tempermonkey

English телендә DavidKarlas 9 November 2023 баҫылып сыҡты.

Tampermonkey is web browser extension that allows adding JavaScript to any website in your browser and manipulate content of that website. It sounds scary and probably should, first you need to trust extension itself and then scripts that you install. Since extension itself has huge community and history, millions of installs across Chrome/Edge/Firefox extensions stores, 5 stars… Let’s assume we can trust it…

I wrote some time ago script that I want to share with everyone, it adds few buttons to OpenStreetMap.org website. Here is example how it looks like: Image showing new buttons added to OpenStreetMap.org website

On example of New York above buttons would take you to following websites:

  • PeWu nice and simple history view of changes on nodes, ways or relations
  • DeepHistory another history viewer, but in tabular view
  • Relation Analyzer helpful website for validating/analyzing relations
  • Overpass Opens Overpass at same viewport as currently seen on OSM website

It also adds different set of buttons linking to Achavi, OSMHV, OSMCha and OSM Lab websites when viewing changeset on website: Shows enriched OSM website

To install this extension in your browser go to https://www.tampermonkey.net/ and follow instructions…

Once you have it installed… You will want to install script that I wrote to do that:

Now go to OpenStreetMap.org or some changeset/node/way or relation and new buttons should show up.

You can give suggestions or report bugs either here or at https://gist.github.com/DavidKarlas/81b684dc6853f489b233715d157c145b

Happy mapping,

David

Email icon Bluesky Icon Facebook Icon LinkedIn Icon Mastodon Icon Telegram Icon X Icon

Фекер алышыу

gileriтарафынан10 November 2023 cәғәт 20:41көндө ҡаралған

Hi, thank you for the script, it’s pretty useful !

JesseFTWтарафынан11 November 2023 cәғәт 23:27көндө ҡаралған

This looks delightful, I plan to install it soon. Thank you for writing it.

barefootstacheтарафынан18 November 2023 cәғәт 04:54көндө ҡаралған

I would suggest sharing your code also with https://openuserjs.org/. This will ease the installing process for users and will make it extension independent meaning that users can choose between TamperMonkey and GreaseMonkey.

danilax86тарафынан19 November 2023 cәғәт 12:50көндө ҡаралған

Thank you!

快乐的老鼠宝宝тарафынан20 November 2023 cәғәт 13:31көндө ҡаралған

Have you considered uploading your code to Greasyfork? Because for TamperMonkey users, the js script ecology of this website is more concentrated.

dadavidтарафынан20 November 2023 cәғәт 22:39көндө ҡаралған

started using it yesterday after reading about it on weeklyosm, already sure i cant use osm.org without it anymore! :D

i’d love the addition of an osmcha link on a users profile with the filter pre-applied, like you are doing for changesets already.

But yeah, amazing work, thank you very much

dadavidтарафынан21 November 2023 cәғәт 16:37көндө ҡаралған

thank you again for the script, i edited to add an osmcha-filter-link on a users page.

Just add this after line 85 (a little ugly because of url encoding):

addButton("OSMCha", "https://osmcha.org/?filters=%7B%22date__gte%22%3A%5B%7B%22label%22%3A%22%22%2C%22value%22%3A%22%22%7D%5D%2C%22users%22%3A%5B%7B%22label%22%3A%22" + regexResult[2] + "%22%2C%22value%22%3A%22" + regexResult[2] + "%22%7D%5D%7D");

DavidKarlasтарафынан24 November 2023 cәғәт 09:52көндө ҡаралған

Hi all, thank you for kind words… There was recent change on OSM website that shifted buttons a bit, hence I published new 0.3.1 version to address that. I also added @dadavid suggestion to add OSMCha for users…

I didn’t get around to checking out publishing on https://openuserjs.org/ or https://greasyfork.org/… Will get to that at some point :P

ayxisтарафынан22 August 2024 cәғәт 12:53көндө ҡаралған

Hi!
This script is amazing. I am not exaggerating when I say that I use it everyday. It saves me so much element-ID-copying-pain :)

May I request a Button for the level0-Editor when viewing a way/node/relation?

function updateThings() {  
...
addButton("level0", "https://level0.osmz.ru/?url="+ type + id);
...
}

DavidKarlasтарафынан16 February 2025 cәғәт 12:57көндө ҡаралған

@ayxis, sorry it took this long, but today OSM website changed which broke a bit UI with this script, hence I updated and I also added level0 link.

Best regards, David

JesseFTWтарафынан16 February 2025 cәғәт 16:26көндө ҡаралған

Thanks for the update – looks great!

ayxisтарафынан21 February 2025 cәғәт 10:23көндө ҡаралған

@DavidKarlas Thank you so much!

Фекер яҙыу өсөн Инеү