Geocode Serbian addresses offline
One file for all of Serbia, read locally. No server, no API key, and the addresses you geocode never leave your machine.
Get started
The file for Serbia is 32 MB and holds 2.6 million addresses from the RGZ registry (via Overture Maps). Download it once, checked against the signed release; every query after that runs on your machine, with no API key and no rate limit.
$ pip install gridpin-mcp # includes the engine $ gridpin-fetch rs # Serbia, 32 MB, verified download
import gridpin
from gridpin_mcp import sheets
g = gridpin.Geocoder(str(sheets.download("rs"))) # no-op once downloaded
g.geocode("Knez Mihailova 5, Beograd", 1)
# -> house, Kneza Mihaila 5, Stari Grad
g.geocode("Кнез Михаилова 5, Београд", 1)
# -> the same house
Latin and Cyrillic both work, and so do everyday street names next to the official ones (Knez Mihailova is Kneza Mihaila in the registry).
How often it finds the right house, compared with Nominatim and Photon on independent truth: benchmark. Try it without installing: the live demo (pick Serbia in the list), or the Colab notebook (set COUNTRY = "rs").