https://github.com/saidsef/faas-reverse-geocoding
Golang reverse geocoding
https://github.com/saidsef/faas-reverse-geocoding
docker docker-container geocoding go golang golang-server location reverse-geocode reverse-geocoding
Last synced: 10 months ago
JSON representation
Golang reverse geocoding
- Host: GitHub
- URL: https://github.com/saidsef/faas-reverse-geocoding
- Owner: saidsef
- License: mit
- Created: 2018-04-02T23:46:24.000Z (almost 8 years ago)
- Default Branch: main
- Last Pushed: 2025-03-14T19:35:33.000Z (11 months ago)
- Last Synced: 2025-03-25T23:07:27.832Z (10 months ago)
- Topics: docker, docker-container, geocoding, go, golang, golang-server, location, reverse-geocode, reverse-geocoding
- Language: Go
- Homepage:
- Size: 237 KB
- Stars: 5
- Watchers: 2
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# Golang Reverse GeoCoding
[](https://goreportcard.com/report/github.com/saidsef/faas-reverse-geocoding)

[](https://pkg.go.dev/github.com/saidsef/faas-reverse-geocoding?tab=doc)



Reverse geocoding is used to find places or addresses near a latitude, longitude pair. Picture a map showing building outlines but no labels, then clicking on a building and being shown the name of the business. That is reverse geocoding.
This repository holds a small web service that performs reverse geocoding to determine whether specified geo coordinates has an address. If it is then the response will contain attributes associated with the matched address, municipality, county, country, etc.
> By default, this will cache requests for 60 minutes to prevent repeated request(s) being sent again and again. The percision is limited to 3 decimal places.
## Geographic Coordinates
The number of decimal places in geographic coordinates determines the accuracy of the location. Each additional decimal place increases the precision of the coordinates:
| Decimal Places | Precision |
|:--------------:|:----------------:|
| 1 | ±10 kilometres |
| 2 | ±1 kilometre |
| 3 | ±100 metres |
| 4 | ±10 metres |
| 5 | ±1 metre |
| 6 | ±10 centimetres |
## Deployment
### Helm Chart
```shell
helm repo add geocode https://saidsef.github.io/faas-reverse-geocoding
helm repo update
helm upgrade --install geocode geocode/reverse-geocoding --namespace geocode --create-namespace
```
> *NOTE:* API can be accessed via port-forward `Service` or via Enabling `Ingress`
### Kustomization
```shell
kubectl apply -k deployment/
```
> *NOTE:* API can be accessed via port-forward `Service` or via updating `Ingress`
Take it for a test drive:
```shell
curl -d '{"lat":"41.40338","lon":"2.17403"}' http://localhost:8080/
```
```python
from requests import post
data='{"lat":"41.40338","lon":"2.17403"}'
r = post('http://localhost:8080/', data=data)
print(r.text)
```
## Source
Our latest and greatest source of *Reverse Geocoding* can be found on [GitHub]. [Fork us](https://github.com/saidsef/faas-reverse-geocoding/fork)!
## Contributing
We would :heart: you to contribute by making a [pull request](https://github.com/saidsef/faas-reverse-geocoding/pulls).
Please read the official [Contribution Guide](./CONTRIBUTING.md) for more information on how you can contribute.