A web based data mining tool for OpenStreetMap using the Overpass API.

Overview

overpass turbo

This is a GUI for testing and developing queries for the Overpass-API. It can also used for simple analysis of OSM data.

Getting Started

Just point your browser to overpass-turbo.eu and start running your Overpass queries.

More information about overpass turbo is found in the OSM wiki.

Translating

Translations are managed using the Transifex platform. After signing up, you can go to overpass-turbo's project page, select a language and click Translate now to start translating.

If your language isn't currently in the list, just drop me a mail or open an issue ticket.

To download the latest translations from Transifex, run tx pull --all using the Transifex client tx.

Development

Build Status

URL parameters

overpass turbo can be linked from other applications by using URL parameters. For example, one can provide a query to load, set the initial map location, or instruct turbo to load a template.

git-branches

Development is done in the master branch, stable releases are marked with git tags, the gh-pages branch contains static builds of the releases.

install & run

  1. npm install
  2. npm start for a Development server listening at http://localhost:8080
  3. npm run build for a minified build in ./build
Comments
  • Tabular data view added, see https://github.com/tyrasd/overpass-ide/issues/8

    Tabular data view added, see https://github.com/tyrasd/overpass-ide/issues/8

    Not beautiful yet - detailed css is missing, and with lot's of ideas to extend further, but working, and basically solving the issue #8.

    As a side node I changed the view buttons (Map, Data) functionality to easily support more than two tabs (I added a third one for the table), and slightly generalized the css code.

    opened by jongleur1983 27
  • Geometry of relation members is no longer shown

    Geometry of relation members is no longer shown

    For example,

    (
      relation(3791784);
      >;
    );
    out;
    

    used to show all relation members, but it currently shows just one dot for the relation.

    The same disappearance happens with out geom:

    relation(3791784);
    out geom;
    
    opened by zstadler 22
  • Restyle application UI with CSS framework

    Restyle application UI with CSS framework

    Reason for this PR

    At the moment the UI seems to be outdated with the gradients in the menu bar, the small buttons with color shadows, and half-transparent modals with small buttons and no border.

    There is heavy use of jQuery UI, which is also old, and better alternatives exist.

    Some options of lightweight frameworks would be Bulma, Bootstrap or Spectre. They can usually used without Javascript.

    Attached is a PR which rewrites the main UI of the application. I am wondering if such a thing would be accepted. This is just a start, there may be more to be improved (accordion in modals, usage of icons, etc.).

    Changes in this PR

    • Addition of Bulma CSS (https://bulma.io/)
    • Removal of much custom CSS
    • Addition of Font Awesome icons (used in menu bar, custom leaflet controls, dialogs) (https://fontawesome.com/icons?d=gallery)
    • Usage of Bulma modals for presenting dialogs to the user. Replaces all usages of jQuery modals/dialogs.
    • Usage of Bulma box and form styles for improving content of many modals. Replaces all occurrences of jQuery accordeon.
    • The breakpoint of 'mobile' devices has been changed to 1024px width (in line with Bulma breakpoints).
    • Improve readability of Help and Settings dialogs by using semantic HTML.

    Other things (future)

    • It would be great if JavaScript ES6 could be used (classes, template litersals, etc.).
    • It seems that Travis does not report PR test results on PRs.

    Screenshots of this PR

    (Improved main application interface)

    image

    (Improved modals (here the query wizard))

    image

    (Improved loading modal with indeterminate loading bar)

    image

    opened by hiddewie 20
  • Export for Wiki

    Export for Wiki

    The other day, I added a wiki template* to the OSM wiki to automatically render Overpass QL source code in a <div> section along with the well known steering wheel icon pointing to overpass turbo. Once you click on the icon, the exact same source code is opened up in overpass turbo (Example). So, there's no more fiddling with shortlinks in the wiki and trying to keep everything in sync - the Overpass query in the wiki is the single source of truth now. :sunglasses:

    To motivate people to add more examples to the wiki, I thought about some new "Export to Wiki" feature in overpass turbo. Manually adding examples is of course also possible. However, it involves some insane escaping, which easily gets into the way of adding something useful to the wiki:

    Conversion wise, I could identify at least the following two issues, which would have to be covered by an Overpass QL -> Wiki text conversion:

    • overpass turbo extensions need escaping: {{bbox}} turns into {{((}}bbox{{))}}
    • | needs to be escaped as {{!}}, basically everywhere, in particular in regular expressions.

    Example output for "Export for Wiki":

    {{OverpassTurboExample|query=
    [out:json][timeout:800];
    // Get all schools in current bounding box
    ( way[amenity=school]({{((}}bbox{{))}});
      node[amenity=school]({{((}}bbox{{))}});
      rel[amenity=school]({{((}}bbox{{))}});
    )->.schools;
    // find highway=* around schools with radius 50m, ignoring
    // footway and paths. In addition, highways are relevant if they 
    way(around.schools:50)[highway][highway!~"^(footway{{!}}path)$"]
       (if: (is_number(t[maxspeed]) && t[maxspeed] > 30) {{!}}{{!}} 
            !is_tag(maxspeed) )->.streets;
    }}
    

    //edit: *template documentation on the osm wiki: https://wiki.openstreetmap.org/wiki/Template:OverpassTurboExample

    enhancement 
    opened by mmd-osm 16
  • Add kumi.systems Overpass Instance

    Add kumi.systems Overpass Instance

    You may want to add the instance at https://overpass.kumi.systems/api/ to the list of suggested servers. It runs on quite strong hardware (see wiki) and keeps attic data, so it should be able to take some load off the instance at overpass-api.de.

    opened by kumitterer 15
  • Use ES6 modules, use webpack bundler (cont.)

    Use ES6 modules, use webpack bundler (cont.)

    continuation of #282 (moving onto a branch on the main github repo for easier collaboration @simon04).

    • [x] install packages from npm via
    • [x] use ES6 module export/import
    • [x] use webpack for bundling the ide (index.html)
    • [x] use webpack for bundling the interactive map (map.html)
    • [x] make the tests run again
    • [x] get rid of *_packaged.html files
    • [x] switch to different publishing mechanism: use gh-pages branch to contain only bundled stuff (like this maybe)?
    todo 
    opened by tyrasd 14
  • bring

    bring "interactive map" up to date

    The interactive map (map.html) export has fallen behind the regular overpass turbo functionality quite a lot (e.g. mapcss, data statement, etc.). Bring it up to date.

    • [x] MapCSS
    • [x] Data Statement
    • [ ] other Parameters
    • [x] small features rendering
    • [ ] …?
    todo 
    opened by tyrasd 13
  • Customized Styling of Map Features

    Customized Styling of Map Features

    Currently, nodes are shown as a blue circle. It would be great to be able to set a custom image for a marker. Probably, it's out of scope of overpass api, but still good to have for embed map service.

    enhancement 
    opened by Vanuan 13
  • Missing saved queries

    Missing saved queries

    I have previously saved my often used, or customized queries, and never had problems loading them. Today, I just discovered that I lost all my saved queries. :sob:

    Any suggestions how to recover these?

    opened by govvin 12
  • export to JOSM fails in latest (unstable) versions of JOSM

    export to JOSM fails in latest (unstable) versions of JOSM

    With current overpass and JOSM Version 8243, JOSM gives:

    Cannot open URL 'http://overpass-api.de/api/interpreter?fixme=JOSM-ticket-8566&data=%2F*%0AThis%20has....' The following download tasks accept the URL patterns shown:

    Due to the fixme=JOSM-ticket-8566 string.

    bug 
    opened by brycenesbitt 12
  • Queries don't work for strings with non ascii characters (acute accent, cedilla, unicode…)

    Queries don't work for strings with non ascii characters (acute accent, cedilla, unicode…)

    • fountain in Besançon display an error message, but fountain in Besancon work fine
    • "bus stop" around Béziers don't work, the "good" query is "bus stop" around Beziers
    enhancement usability 
    opened by pyrog 12
  • Set document title from query's @name

    Set document title from query's @name

    1. After running the following query, the document title will be "amenity=drinking_water | overpass turbo"
    // @name amenity=drinking_water
    node[amenity=drinking_water]({{bbox}});
    
    1. After loading the example "Mountains in Area", the query will contain @name and after running the document title will be "Mountains in Area | overpass turbo"
    // @name Mountains in Area
    ...
    

    The syntax is inspired from https://sass-lang.com/documentation/syntax/comments#documentation-comments

    opened by simon04 1
  • build(deps): bump ansi-regex from 5.0.0 to 5.0.1

    build(deps): bump ansi-regex from 5.0.0 to 5.0.1

    Bumps ansi-regex from 5.0.0 to 5.0.1.

    Release notes

    Sourced from ansi-regex's releases.

    v5.0.1

    Fixes (backport of 6.0.1 to v5)

    This is a backport of the minor ReDos vulnerability in ansi-regex@<6.0.1, as requested in #38.

    • Fix ReDoS in certain cases (#37) You are only really affected if you run the regex on untrusted user input in a server context, which it's very unlikely anyone is doing, since this regex is mainly used in command-line tools.

    CVE-2021-3807

    https://github.com/chalk/ansi-regex/compare/v5.0.0..v5.0.1

    Thank you @​yetingli for the patch and reproduction case!

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump qs from 6.5.2 to 6.5.3

    Bump qs from 6.5.2 to 6.5.3

    Bumps qs from 6.5.2 to 6.5.3.

    Changelog

    Sourced from qs's changelog.

    6.5.3

    • [Fix] parse: ignore __proto__ keys (#428)
    • [Fix] utils.merge: avoid a crash with a null target and a truthy non-array source
    • [Fix] correctly parse nested arrays
    • [Fix] stringify: fix a crash with strictNullHandling and a custom filter/serializeDate (#279)
    • [Fix] utils: merge: fix crash when source is a truthy primitive & no options are provided
    • [Fix] when parseArrays is false, properly handle keys ending in []
    • [Fix] fix for an impossible situation: when the formatter is called with a non-string value
    • [Fix] utils.merge: avoid a crash with a null target and an array source
    • [Refactor] utils: reduce observable [[Get]]s
    • [Refactor] use cached Array.isArray
    • [Refactor] stringify: Avoid arr = arr.concat(...), push to the existing instance (#269)
    • [Refactor] parse: only need to reassign the var once
    • [Robustness] stringify: avoid relying on a global undefined (#427)
    • [readme] remove travis badge; add github actions/codecov badges; update URLs
    • [Docs] Clean up license text so it’s properly detected as BSD-3-Clause
    • [Docs] Clarify the need for "arrayLimit" option
    • [meta] fix README.md (#399)
    • [meta] add FUNDING.yml
    • [actions] backport actions from main
    • [Tests] always use String(x) over x.toString()
    • [Tests] remove nonexistent tape option
    • [Dev Deps] backport from main
    Commits
    • 298bfa5 v6.5.3
    • ed0f5dc [Fix] parse: ignore __proto__ keys (#428)
    • 691e739 [Robustness] stringify: avoid relying on a global undefined (#427)
    • 1072d57 [readme] remove travis badge; add github actions/codecov badges; update URLs
    • 12ac1c4 [meta] fix README.md (#399)
    • 0338716 [actions] backport actions from main
    • 5639c20 Clean up license text so it’s properly detected as BSD-3-Clause
    • 51b8a0b add FUNDING.yml
    • 45f6759 [Fix] fix for an impossible situation: when the formatter is called with a no...
    • f814a7f [Dev Deps] backport from main
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Commented out geocodeArea should not be executed

    Commented out geocodeArea should not be executed

    // introduces a one-line comment. So no matter what stupid stuff is written afterwards, it should not interest the compiler/interpreter.

    In the following code, however, there is an error message with subsequent abort of the processing, which, from my point of view, is not correct:

    // {{geocodeArea: "Darmstadt:Darmstadt-Dummes Zeug"}}->.searchArea;
    {{geocodeArea:"Darmstadt:Darmstadt-Nord"}}->.searchArea;
    
    (
      nw[fixme]   (area.searchArea);
    );
    
    out meta;
    >;
    out meta qt;
    

    grafik

    opened by Wetterauer 0
  • Scientific notation in export causes invalid GPX export

    Scientific notation in export causes invalid GPX export

    Possibly needs to be forwarded to https://github.com/drolbr/Overpass-API but I'm not sure:

    When doing an export of the borders of France I got invalid GPX code as one coordinate was so close to latitude 0 that it was exported in scientific notation:

    <trkpt lat="49.3267136" lon="0.0005797"/>
    <trkpt lat="49.3264086" lon="-2e-7"/>
    <trkpt lat="49.3261744" lon="-0.0005312"/>
    

    My query:

    [out:json];
    
    area["name"="France"]->.country;
    rel["name"="France"]["type"="boundary"]["admin_level"="2"];
    (
    way(r)["maritime" != "yes"]({{bbox}});
    way(area.country)["natural"="coastline"]({{bbox}});
    );
    
    out body;
    >;
    out skel qt;
    

    Edit for context: I was trying to import the file into Maperitive v2.4.3

    opened by BitScout 15
Releases(2020-01-07)
MERN stack travel app using mapbox API, Travel and drop pin , share reviews and rate the location

MERN-Travel-Map Travel Map Pin A single page application built with MERN Stack from scratch (MongoDB + Mongoose, Express, React & NodeJs) Table of Con

Bùi Quốc Trọng 11 Dec 29, 2022
The NASA WorldWind Javascript SDK (WebWW) includes the library and examples for creating geo-browser web applications and for embedding a 3D globe in HTML5 web pages.

Web WorldWind New versions of WorldWind released Web WorldWind 0.10.0 and WorldWind Java 2.2.0 are now available on GitHub. The new version of Web Wor

NASA WorldWind 770 Jan 1, 2023
Geokit - is a command-line interface (CLI) tool written in javascript, that contains all the basic functionalities for measurements, conversions and operations of geojson files.

Geokit Geokit is a command-line interface (CLI) tool written in javascript, that contains all the basic functionalities for measurements, conversions

Development Seed 31 Nov 17, 2022
A map tool with real-time collaboration 🗺️

Mapus Maps with real-time collaboration ??️ Mapus is a tool to explore and annotate collaboratively on a map. You can draw, add markers, lines, areas,

Alyssa X 3k Jan 4, 2023
An online tool to generate and visualize maps for irregular and/or gapped LED layouts, for use with FastLED, Pixelblaze and other libraries.

An online tool to generate and visualize maps for irregular and/or gapped LED layouts, for use with FastLED, Pixelblaze and other libraries.

Jason Coon 172 Dec 8, 2022
A Google Earth Engine tool for identifying satellite radar interference

Many military radars interfere with open source satellite imagery when they're turned on. A new tool lets anyone monitor when and where these radars a

Bellingcat 411 Dec 27, 2022
Satellite imagery annotation tool

Satellite imagery annotation tool This is a lightweight web-interface for creating and sharing vector annotations over satellite/aerial imagery scenes

Microsoft 146 Dec 23, 2022
3D web map rendering engine written in TypeScript using three.js

3D web map rendering engine written in TypeScript using three.js

HERE Technologies 1.2k Dec 30, 2022
Pixel based heatmap with html5 canvas.

heatcanvas Note that this project is no longer active maintained. Please let me know(file an issue or send me email) if you are interested in taking o

Ning Sun 388 Dec 12, 2022
Mapbox JavaScript API, a Leaflet Plugin

mapbox.js A Mapbox plugin for Leaflet, a lightweight JavaScript library for traditional raster maps. For the state-of-the-art Mapbox vector maps libra

Mapbox 1.9k Dec 23, 2022
React friendly API wrapper around MapboxGL JS

react-map-gl | Docs react-map-gl is a suite of React components designed to provide a React API for Mapbox GL JS-compatible libraries. More informatio

Vis.gl 6.9k Jan 2, 2023
Node.js REST API for PostGres Spatial Entities. AKA: SpatialServer

PGRestAPI (a.k.a. Chubbs Spatial Server) Overview Node.js REST API for PostgreSQL Spatial Tables. An introduction to PGRestAPI can be found here A few

SpatialDev 429 Dec 9, 2022
Implements the tilelive API for generating vector tiles from PostGIS

tilelive-postgis Implements the tilelive API for generating mapnik vector tiles from PostGIS. Installation npm install @mapbox/tilelive tilelive-postg

Stepan Kuzmin 50 Dec 12, 2022
This map is tracking the position of ISS(international space setallite) at every 1 second. I use Nasa's "where the iss" API and "Leaflet.js" for the map.

ISS-tracking-map About This map is tracking the position of ISS(international space setallite) at every 1 second. I use Nasa's "where the iss" API and

Waz.sheeran 2 Oct 25, 2021
Polymaps is a free JavaScript library for making dynamic, interactive maps in modern web browsers.

Polymaps Polymaps is a free JavaScript library for making dynamic, interactive maps in modern web browsers. See http://polymaps.org for more details.

Urban Airship 1.6k Dec 23, 2022
This is a collection of over two hundred code samples an growing for the Bing Maps V8 web control.

Bing Maps V8 Code Samples This is a collection of over a hundred code samples for the Bing Maps V8 web control. These samples have been collected from

Microsoft 130 Dec 8, 2022
This project contains the TypeScript definitions for the Bing Maps V8 Web Control.

Bing Maps V8 TypeScript Definitions These are the official TypeScript definitions for the Bing Maps V8 Web Control. These can be used to provide intel

Microsoft 35 Nov 23, 2022
A simple web extension that redirects Twitter, YouTube, Instagram & Google Maps requests to privacy friendly alternatives.

Get Donate FIRO aEyKPU7mwWBYRFGoLiUGeQQybyzD8jzsS8 BTC: 3JZWooswwmmqQKw5iW6AYFfK5gcWTrvueE ETH: 0x90049dc59365dF683451319Aa4632aC61193dFA7 About A web

Simon Brazell 1.6k Dec 29, 2022
a roadtrip planner web application.

Rally - Roadtrip Planner Rally Map is a comprehensive web application that helps you plan your dream road trip with ease. With Rally Map, you can crea

Panapat Pilapa 4 Mar 20, 2023