Comment by Doctor_Fegg

5 days ago

The killer host-it-yourself component which mostly flies under the radar is Photon: https://github.com/komoot/photon

I'm simplifying slightly, but it's essentially OSM's Nominatim geocoder data with a ready-to-download db, autocomplete capabilities, and a single .jar to install. If you're happy with the limitations of OSM's data (basically, patchy housenumber coverage) then it's easy and fast.

And if you don't want to host Photon on your own you can have it hosted from GraphHopper: https://docs.graphhopper.com/openapi/geocoding

This request/response format is a bit different than the native Photon format, but with GraphHopper Geocoding it is possible to easily switch between different "providers" (like Nominatim, OpenCage etc.), which are all usable under the same contract.

disclaimer: I'm a co-founder of GraphHopper