🚀 [Re]Introducing Ultra v3 (née Overpass Ultra)
Posted by dpschep on 9 November 2024 in English. Last updated on 25 January 2025.In January, I introduced Overpass Ultra v2 and then in June I provided some updates. Today I’m excited to share that Overpass Ultra is now simply Ultra(v3) as it has evolved beyond simply being an Overpass client into a general purpose MapLibre GL JS IDE.
Since my last update, the following features have been implemented, culminating in the release & announcement of Ultra:
- More extensive documentation
- The concept of query providers
- Auto-sorting of
paint
andlayout
layer styling directives - Fallback
glyphs
- Bundled icons as named sprite sheets
-
HTMLControl
to add custom controls, including titles to a map
📘 Documentation
At the end of June, I announced overpass-ultra.us/docs on Mastodon. In addition to basic documentation about Ultra, it includes many Examples which are focused more on Ultra’s capabilities than the specifics of quering Overpass as there are already many resources for how to do that. It also includes a MapLibre Examples section which includes ports of many MapLibre GL JS Examples to help demonstrate Ultra’s capabilities as a MapLibre IDE rather than as an Overpass client.
⚙️ Query Providers
If you’ve kept a keen eye on the afforementioned docs, you’ll have noticed that you can specify the query provider with the type
key in the YAML frontmatter
Ultra’s Overpass API support is now merely one of many query providers that are supported. Ultra now implements query providers for the following:
-
Overpass queries (
overpass
) -
SPARQL queries (
sparql
) -
ohsome API Elements Extraction (
ohsome
) -
GeoJSON (
geojson
) -
KML (
kml
) -
GPX (
gpx
) -
TCX (
tcx
) - and more!
📄 JSON & XML GIS file formats
The geojson
, kml
, gpx
, and tcx
providers all work by simply specifying the contents of a document or the URL to a document as the query body.
For example, an in-line GeoJSON query doc (Load query in Ultra)