Skip to content

POLAR@3: Add nominatim support - #606

Open
oeninghe-dataport wants to merge 21 commits into
nextfrom
vue3/add-nominatim-support
Open

POLAR@3: Add nominatim support#606
oeninghe-dataport wants to merge 21 commits into
nextfrom
vue3/add-nominatim-support

Conversation

@oeninghe-dataport

Copy link
Copy Markdown
Collaborator

Summary

Add support for nominatim in addressSearch and reverseGeocoder

Instructions for local reproduction and review

Snowbox-integrated

@oeninghe-dataport oeninghe-dataport added this to the POLAR@3 milestone Mar 23, 2026
@oeninghe-dataport oeninghe-dataport self-assigned this Mar 23, 2026
@oeninghe-dataport oeninghe-dataport added the enhancement New feature or request label Mar 23, 2026
@oeninghe-dataport
oeninghe-dataport force-pushed the vue3/add-nominatim-support branch from 52c8b35 to 4304863 Compare March 23, 2026 16:24
@oeninghe-dataport oeninghe-dataport changed the title Vue3/add nominatim support POLAR@3: Add nominatim support Mar 23, 2026
@github-actions

github-actions Bot commented Mar 23, 2026

Copy link
Copy Markdown
PR Preview Action v1.8.1

QR code for preview link

🚀 View preview at
https://Dataport.github.io/polar/pr-preview/pr-606/

Built to branch gh-pages at 2026-07-31 08:16 UTC.
Preview will be ready when the GitHub Pages deployment is complete.

@dopenguin
dopenguin force-pushed the vue3/add-nominatim-support branch from 4304863 to 599e195 Compare March 30, 2026 10:54
@dopenguin
dopenguin force-pushed the vue3/add-nominatim-support branch from 599e195 to 9757271 Compare April 7, 2026 09:29
@dopenguin

Copy link
Copy Markdown
Member

@oeninghe-dataport Please update the PR. Will review afterwards

dopenguin added a commit that referenced this pull request May 12, 2026
Some changes need to be evaluated after the merges of #447, #542 and #606 as they differ from those
PRs and are just added here for type and linting fixes.

# Conflicts:
#	.gitignore
#	examples/github-io/components/HeroPolarMap.vue
#	examples/snowbox/YetAnotherEmptyComponent.vue
#	examples/snowbox/index.js
#	src/core/components/PolarMap.ce.vue
#	src/core/types/plugin.ts
#	src/plugins/reverseGeocoder/store.ts
#	src/plugins/reverseGeocoder/utils/reverseGeocodeWps.ts
#	vue2/packages/plugins/Gfi/CHANGELOG.md
#	vue2/packages/plugins/Gfi/package.json
@oeninghe-dataport

Copy link
Copy Markdown
Collaborator Author

🏓 @dopenguin Updated

@oeninghe-dataport Please update the PR. Will review afterwards

@dopenguin dopenguin left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we further specify the search so the results are relevant for the client? The default seems ... not helpful :D

Image

🏓 @oeninghe-dataport

Comment thread examples/snowbox/index.js Outdated
Comment thread src/plugins/reverseGeocoder/utils/reverseGeocodeWps.ts Outdated
Comment thread src/lib/getFeatures/types.ts
Comment thread src/lib/getFeatures/types.ts Outdated
Comment thread src/lib/getFeatures/types.ts Outdated
Comment thread src/plugins/reverseGeocoder/utils/reverseGeocodeNominatim.ts Outdated
Comment thread src/lib/getFeatures/nominatim.ts Outdated
Comment thread src/lib/getFeatures/nominatim.ts Outdated
Comment thread src/lib/getFeatures/nominatim.ts Outdated
Comment thread src/lib/getFeatures/nominatim.ts Outdated
@oeninghe-dataport

Copy link
Copy Markdown
Collaborator Author

Can we further specify the search so the results are relevant for the client? The default seems ... not helpful :D

Image 🏓 @oeninghe-dataport

It should be noted that the POLAR nominatim service is currently (due to server constraints) limited to geocoding in Lower Saxony.

@oeninghe-dataport

Copy link
Copy Markdown
Collaborator Author

🏓 @dopenguin

@dopenguin dopenguin left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we further specify the search so the results are relevant for the client? The default seems ... not helpful :D
Image
🏓 @oeninghe-dataport

It should be noted that the POLAR nominatim service is currently (due to server constraints) limited to geocoding in Lower Saxony.

Is it possible to update the POLAR nominatim service to include Hamburg as the snowbox typically uses a lot of Hamburg specific services?

🏓 @oeninghe-dataport

Comment thread src/lib/transformGeometry.ts Outdated
Comment thread src/lib/getFeatures/wfs/parse.ts
Comment thread src/lib/getFeatures/bkg.ts
Co-authored-by: Pascal Röhling <73653210+dopenguin@users.noreply.github.com>
@oeninghe-dataport
oeninghe-dataport requested a review from a team June 17, 2026 18:28
@dopenguin dopenguin mentioned this pull request Jun 22, 2026
7 tasks
@oeninghe-dataport

Copy link
Copy Markdown
Collaborator Author

🏓 @dopenguin

@dopenguin dopenguin left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

.filter((x) => x)
.join(', '),
properties: result.properties,
properties: {},

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

According to the docs, that field does not exist. Not quite sure why I assumed that earlier.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably because we can request GeoJSON. Have you tried that before?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I tried that earlier. Both work flawlessly, however, the JSONv2 structure is IMO easier and I preferred it therefore. A Nominatim-specific implementation is necessary either way.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The response may be slightly easier to parse, but information of the feature is lost. It seems preferrable to use 'geojson' as the response format in order to easily add the properties here.

@oeninghe-dataport oeninghe-dataport Jul 31, 2026

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yea, why not. e62779e de4b588

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The type cast on const properties = feature.properties as NominatimReverseGeocodeProperties is redundant as const result: FeatureCollection<Point, NominatimReverseGeocodeProperties> would do the trick.
This also removes the need for the feature.geometry.type !== 'Point'-check.

Comment thread src/plugins/reverseGeocoder/utils/reverseGeocodeNominatim.ts
Comment thread src/plugins/reverseGeocoder/utils/reverseGeocodeNominatim.ts
Comment thread src/plugins/reverseGeocoder/utils/reverseGeocodeNominatim.ts Outdated
…ponse

Co-authored-by: Pascal Röhling <73653210+dopenguin@users.noreply.github.com>
@oeninghe-dataport

Copy link
Copy Markdown
Collaborator Author

🏓 @dopenguin

@oeninghe-dataport
oeninghe-dataport force-pushed the next branch 2 times, most recently from a353df3 to 6a19ea0 Compare July 17, 2026 08:49

@dopenguin dopenguin left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🏓 @oeninghe-dataport

Also, do we have an update on the following from #606 (review)?

Is it possible to update the POLAR nominatim service to include Hamburg as the snowbox typically uses a lot of Hamburg specific services?

Comment thread src/plugins/reverseGeocoder/types.ts Outdated
Comment thread src/plugins/reverseGeocoder/store.ts
Comment thread src/plugins/reverseGeocoder/utils/reverseGeocodeWps.ts Outdated
@oeninghe-dataport

Copy link
Copy Markdown
Collaborator Author

🏓 @oeninghe-dataport

Also, do we have an update on the following from #606 (review)?

Is it possible to update the POLAR nominatim service to include Hamburg as the snowbox typically uses a lot of Hamburg specific services?

🏓 @dopenguin

There is no reply on this yet, I'll put it on the agenda of our weekly.

@dopenguin

Copy link
Copy Markdown
Member

🏓 @oeninghe-dataport
Also, do we have an update on the following from #606 (review)?

Is it possible to update the POLAR nominatim service to include Hamburg as the snowbox typically uses a lot of Hamburg specific services?

🏓 @dopenguin

There is no reply on this yet, I'll put it on the agenda of our weekly.

🏓 @oeninghe-dataport

The GeoJSON properties of the reverse geocoder with nominatim are
preserved as properties of the result.
@oeninghe-dataport
oeninghe-dataport force-pushed the vue3/add-nominatim-support branch from e62779e to de4b588 Compare July 31, 2026 08:00
@oeninghe-dataport

Copy link
Copy Markdown
Collaborator Author

🏓 @dopenguin

@dopenguin

Copy link
Copy Markdown
Member

🏓 @dopenguin

🏓 @oeninghe-dataport

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants