[HN Gopher] Hyper-optimized reverse geocoding API
       ___________________________________________________________________
        
       Hyper-optimized reverse geocoding API
        
       Author : tananaev
       Score  : 58 points
       Date   : 2026-03-19 14:38 UTC (8 hours ago)
        
 (HTM) web link (github.com)
 (TXT) w3m dump (github.com)
        
       | tananaev wrote:
       | Self-hosted reverse geocoder with sub-millisecond query latency.
       | C++ builder parses OSM PBF files into a compact binary index
       | using S2 geometry cells. Rust server memory-maps the index and
       | serves a Nominatim-compatible API. Docker support with automatic
       | HTTPS.
        
         | gniv wrote:
         | How long does it take to build the whole index?
        
           | KomoD wrote:
           | I tried the "Australia and Oceania" pbf which is really small
           | and it took ~15min
        
           | tananaev wrote:
           | It took about 8-10 hours for me on a 192GB Hetzner cloud
           | machine. The resulting index was just 18GB, so once the index
           | is created it's really efficient and you can easily run it on
           | a small VM.
        
       | majorchord wrote:
       | I just want a regular (non-reverse) geocoding system that's
       | actually easy to self-host.
       | 
       | Windows CE apps were doing this 20 years ago with single file
       | databases of only a few GBs, why do I need a 500GB+ postgres
       | monster to do the same thing today?
        
         | felixguendling wrote:
         | Have you tried MOTIS with only the geocoding enabled? This
         | should be 1-2 orders of magnitude smaller.
        
       | macrolet wrote:
       | Great. But look at the query feature of OSM. Try it. At higher
       | zoom levels like 15, querying for features at the same
       | coordinates as your example reveals nearby features. Like hotel
       | buildings, post offices, recycling points, etc. The nominatin
       | format is not enough. What is more, an extended feature set could
       | be used together with an LLM. I am very interested in that, so,
       | feel free to reach out to me if you want to discuss more.
        
       | supriyo-biswas wrote:
       | I don't get the point in writing another geocoder when such
       | programs already exist, e.g: https://pelias.io/
        
         | ranger_danger wrote:
         | I don't get the point in making other types of food when pizza
         | already exists.
        
         | tananaev wrote:
         | Most or all existing solutions are universal (not just reverse
         | geocoding) and rely on database. The purpose of this project is
         | to make it super fast to do one thing. The result is 100x -
         | 1000x speed of Pelias and other universal tools like that.
        
       | KomoD wrote:
       | > docker run -e PBF_URLS="https://download.geofabrik.de/planet-
       | latest.osm.pbf"
       | 
       | Geofabrik doesn't offer a "planet" pbf.
        
         | tananaev wrote:
         | Good catch, thanks. Updated the readme. The planet can be
         | downloaded directly from OSM.
        
       ___________________________________________________________________
       (page generated 2026-03-19 23:01 UTC)