{"id":26451312,"url":"https://github.com/platx/geonames","last_synced_at":"2025-03-18T16:52:35.927Z","repository":{"id":282769674,"uuid":"949399796","full_name":"platx/geonames","owner":"platx","description":" A simple Go client for the Geonames API. Supports Webservice API and data downloads.","archived":false,"fork":false,"pushed_at":"2025-03-16T21:00:46.000Z","size":67,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-16T21:24:16.486Z","etag":null,"topics":["geo","geonames","go","golang","http"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/platx.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-03-16T11:28:11.000Z","updated_at":"2025-03-16T20:51:54.000Z","dependencies_parsed_at":"2025-03-17T04:30:36.496Z","dependency_job_id":null,"html_url":"https://github.com/platx/geonames","commit_stats":null,"previous_names":["platx/geonames"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/platx%2Fgeonames","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/platx%2Fgeonames/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/platx%2Fgeonames/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/platx%2Fgeonames/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/platx","download_url":"https://codeload.github.com/platx/geonames/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244006269,"owners_count":20382442,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["geo","geonames","go","golang","http"],"created_at":"2025-03-18T16:52:32.340Z","updated_at":"2025-03-18T16:52:35.915Z","avatar_url":"https://github.com/platx.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"Geonames Golang client\n======================\n[![Release](https://img.shields.io/github/release/platx/geonames.svg?style=flat-square)](https://github.com/platx/geonames/releases/latest)\n[![Software License](https://img.shields.io/badge/license-MIT-brightgreen.svg?style=flat-square)](LICENSE)\n[![codecov](https://codecov.io/github/platx/geonames/graph/badge.svg?token=LJGZBO88CF)](https://codecov.io/github/platx/geonames)\n[![godoc](https://godoc.org/github.com/platx/geonames?status.svg)](https://godoc.org/github.com/platx/geonames)\n[![Go Report Card](https://goreportcard.com/badge/github.com/platx/geonames?style=flat-square)](https://goreportcard.com/report/github.com/platx/geonames)\n\nThis is a simple Golang client for the [Geonames](http://www.geonames.org/) API. It supports both [Webservice API](https://www.geonames.org/export/web-services.html) and [Download server](https://download.geonames.org/export/dump/).\n\n## Features\n* Easy-to-use Golang wrapper for Geonames API.\n* Includes web service endpoints and downloadable data processing.\n* Implements various API services like country info, nearby locations, postal codes, and Wikipedia data.\n\n# Installation\n\n```bash\ngo get github.com/platx/geonames\n```\n\n# Usage\n\n## Webservices\n\n### Webservice usage example\n```go\npackage main\n\nimport (\n\t\"context\"\n\t\"fmt\"\n\t\"log\"\n\n\t\"github.com/platx/geonames/webservice\"\n)\n\nfunc main() {\n\tclient := webservice.NewClient(\"your-username\")\n\tresult, err := client.Search(context.Background(), webservice.SearchRequest{\n\t\tName: \"London\",\n\t})\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\t\n\tfmt.Println(result)\n}\n```\n\n### Supported API services\nRefer to the following table to check supported and implemented endpoints (emoji ✅ is clickable).\n\n| WebService                                                                                                       | Implemented                                 | XML                                                                                                                                                    | JSON                                                                                                                                                                      | RDF                                                                                         | CSV                                                                                     | TXT                                                                                  | RSS                                                                                                                  | KML                                                                                                                           |\n|------------------------------------------------------------------------------------------------------------------|---------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------|\n| [astergdem](https://www.geonames.org/export/web-services.html#astergdem )                                        | ❌                                           | [✅](http://api.geonames.org/astergdem?lat=50.01\u0026lng=10.2\u0026username=demo\u0026style=full\u0026type=XML)                                                            | [✅](http://api.geonames.org/astergdemJSON?formatted=true\u0026lat=50.01\u0026lng=10.2\u0026username=demo\u0026style=full)                                                                     | ❌                                                                                           | ❌                                                                                       | [✅](http://api.geonames.org/astergdem?lat=50.01\u0026lng=10.2\u0026username=demo\u0026style=full)   | ❌                                                                                                                    | ❌                                                                                                                             |\n| [children](https://www.geonames.org/export/place-hierarchy.html#children)                                        | ❌                                           | [✅](http://api.geonames.org/children?geonameId=3175395\u0026username=demo\u0026style=full)                                                                       | [✅](http://api.geonames.org/childrenJSON?formatted=true\u0026geonameId=3175395\u0026username=demo\u0026style=full)                                                                       | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [contains](https://www.geonames.org/export/place-hierarchy.html#contains)                                        | ❌                                           | [✅](http://api.geonames.org/contains?geonameId=2746385\u0026username=demo\u0026style=full)                                                                       | [✅](http://api.geonames.org/containsJSON?formatted=true\u0026geonameId=2746385\u0026username=demo\u0026style=full)                                                                       | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [countryCode](https://www.geonames.org/export/web-services.html#countrycode)                                     | [✅](./webservice/country_code.go)           | [✅](http://api.geonames.org/countryCodeXML?lat=47.03\u0026lng=10.2\u0026username=demo\u0026style=full)                                                                | [✅](http://api.geonames.org/countryCodeJSON?formatted=true\u0026lat=47.03\u0026lng=10.2\u0026username=demo\u0026style=full)                                                                   | ❌                                                                                           | ❌                                                                                       | [✅](http://api.geonames.org/countryCode?lat=47.03\u0026lng=10.2\u0026username=demo\u0026style=full) | ❌                                                                                                                    | ❌                                                                                                                             |\n| [countryInfo](https://www.geonames.org/export/web-services.html#countryInfo)                                     | [✅](./webservice/country_info.go)           | [✅](http://api.geonames.org/countryInfo?lang=it\u0026country=DE\u0026username=demo\u0026style=full)                                                                   | [✅](http://api.geonames.org/countryInfoJSON?formatted=true\u0026lang=it\u0026country=DE\u0026username=demo\u0026style=full)                                                                   | ❌                                                                                           | [✅](http://api.geonames.org/countryInfoCSV?lang=it\u0026country=DE\u0026username=demo\u0026style=full) | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [countrySubdivision](https://www.geonames.org/export/web-services.html#countrysubdiv)                            | ❌                                           | [✅](http://api.geonames.org/countrySubdivision?lat=47.03\u0026lng=10.2\u0026username=demo\u0026style=full)                                                            | [✅](http://api.geonames.org/countrySubdivisionJSON?formatted=true\u0026lat=47.03\u0026lng=10.2\u0026username=demo\u0026style=full)                                                            | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [earthquakes](https://www.geonames.org/export/JSON-webservices.html#earthquakesJSON)                             | ❌                                           | [✅](http://api.geonames.org/earthquakes?north=44.1\u0026south=-9.9\u0026east=-22.4\u0026west=55.2\u0026username=demo\u0026style=full)                                           | [✅](http://api.geonames.org/earthquakesJSON?formatted=true\u0026north=44.1\u0026south=-9.9\u0026east=-22.4\u0026west=55.2\u0026username=demo\u0026style=full)                                           | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [extendedFindNearby](https://www.geonames.org/export/web-services.html#extendedFindNearby)                       | ❌                                           | [✅](http://api.geonames.org/extendedFindNearby?lat=46.2022156980098\u0026lng=6.14569187164307\u0026username=demo\u0026style=full)                                     | ❌                                                                                                                                                                         | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [findNearby](https://www.geonames.org/export/web-services.html#findNearby)                                       | [✅](./webservice/find_nearby.go)            | [✅](http://api.geonames.org/findNearby?lat=48.865618158309374\u0026lng=2.344207763671875\u0026fclass=P\u0026fcode=PPLA\u0026fcode=PPL\u0026fcode=PPLC\u0026username=demo\u0026style=full) | [✅](http://api.geonames.org/findNearbyJSON?formatted=true\u0026lat=48.865618158309374\u0026lng=2.344207763671875\u0026fclass=P\u0026fcode=PPLA\u0026fcode=PPL\u0026fcode=PPLC\u0026username=demo\u0026style=full) | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [findNearbyPlaceName](https://www.geonames.org/export/web-services.html#findNearbyPlaceName)                     | [✅](./webservice/find_nearby_place_name.go) | [✅](http://api.geonames.org/findNearbyPlaceName?lat=47.3\u0026lng=9\u0026username=demo\u0026style=full)                                                               | [✅](http://api.geonames.org/findNearbyPlaceNameJSON?formatted=true\u0026lat=47.3\u0026lng=9\u0026username=demo\u0026style=full)                                                               | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [findNearbyPostalCodes](https://www.geonames.org/export/web-services.html#findNearbyPostalCodes)                 | ❌                                           | [✅](http://api.geonames.org/findNearbyPostalCodes?postalcode=8775\u0026country=CH\u0026radius=10\u0026username=demo\u0026style=full)                                       | [✅](http://api.geonames.org/findNearbyPostalCodesJSON?formatted=true\u0026postalcode=8775\u0026country=CH\u0026radius=10\u0026username=demo\u0026style=full)                                       | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [findNearbyStreets](https://www.geonames.org/maps/us-reverse-geocoder.html#findNearbyStreets)                    | ❌                                           | [✅](http://api.geonames.org/findNearbyStreets?lat=37.451\u0026lng=-122.18\u0026username=demo\u0026style=full)                                                         | [✅](http://api.geonames.org/findNearbyStreetsJSON?formatted=true\u0026lat=37.451\u0026lng=-122.18\u0026username=demo\u0026style=full)                                                         | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [findNearbyStreetsOSM](https://www.geonames.org/maps/osm-reverse-geocoder.html#findNearbyStreetsOSM)             | ❌                                           | [✅](http://api.geonames.org/findNearbyStreetsOSM?lat=37.451\u0026lng=-122.18\u0026username=demo\u0026style=full)                                                      | [✅](http://api.geonames.org/findNearbyStreetsOSMJSON?formatted=true\u0026lat=37.451\u0026lng=-122.18\u0026username=demo\u0026style=full)                                                      | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [findNearByWeather](https://www.geonames.org/export/JSON-webservices.html#findNearByWeatherJSON)                 | ❌                                           | [✅](http://api.geonames.org/findNearByWeather?lat=42\u0026lng=-2\u0026username=demo\u0026style=full)                                                                  | [✅](http://api.geonames.org/findNearByWeatherJSON?formatted=true\u0026lat=42\u0026lng=-2\u0026username=demo\u0026style=full)                                                                  | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [findNearbyWikipedia](https://www.geonames.org/export/wikipedia-webservice.html#findNearbyWikipedia)             | [✅](./webservice/find_nearby_wikipedia.go)  | [✅](http://api.geonames.org/findNearbyWikipedia?lat=47\u0026lng=9\u0026username=demo\u0026style=full)                                                                 | [✅](http://api.geonames.org/findNearbyWikipediaJSON?formatted=true\u0026lat=47\u0026lng=9\u0026username=demo\u0026style=full)                                                                 | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | [✅](http://api.geonames.org/findNearbyWikipediaRSS?lat=47\u0026lng=9\u0026username=demo\u0026style=full)                            | ❌                                                                                                                             |\n| [findNearestAddress](https://www.geonames.org/maps/us-reverse-geocoder.html#findNearestAddress)                  | ❌                                           | [✅](http://api.geonames.org/findNearestAddress?lat=37.451\u0026lng=-122.18\u0026username=demo\u0026style=full)                                                        | [✅](http://api.geonames.org/findNearestAddressJSON?formatted=true\u0026lat=37.451\u0026lng=-122.18\u0026username=demo\u0026style=full)                                                        | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [findNearestIntersection](https://www.geonames.org/maps/us-reverse-geocoder.html#findNearestIntersection)        | ❌                                           | [✅](http://api.geonames.org/findNearestIntersection?lat=37.451\u0026lng=-122.18\u0026username=demo\u0026style=full)                                                   | [✅](http://api.geonames.org/findNearestIntersectionJSON?formatted=true\u0026lat=37.451\u0026lng=-122.18\u0026username=demo\u0026style=full)                                                   | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [findNearestIntersectionOSM](https://www.geonames.org/maps/osm-reverse-geocoder.html#findNearestIntersectionOSM) | ❌                                           | [✅](http://api.geonames.org/findNearestIntersectionOSM?lat=37.451\u0026lng=-122.18\u0026username=demo\u0026style=full)                                                | [✅](http://api.geonames.org/findNearestIntersectionOSMJSON?formatted=true\u0026lat=37.451\u0026lng=-122.18\u0026username=demo\u0026style=full)                                                | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [findNearbyPOIsOSM](https://www.geonames.org/maps/osm-reverse-geocoder.html#findNearbyPOIsOSM)                   | ❌                                           | [✅](http://api.geonames.org/findNearbyPOIsOSM?lat=37.451\u0026lng=-122.18\u0026username=demo\u0026style=full)                                                         | [✅](http://api.geonames.org/findNearbyPOIsOSMJSON?formatted=true\u0026lat=37.451\u0026lng=-122.18\u0026username=demo\u0026style=full)                                                         | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [address](https://www.geonames.org/maps/addresses.html#address)                                                  | ❌                                           | [✅](http://api.geonames.org/address?lat=52.358\u0026lng=4.881\u0026username=demo)                                                                                | [✅](http://api.geonames.org/addressJSON?lat=52.358\u0026lng=4.881\u0026username=demoJSON)                                                                                           | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [geoCodeAddress](https://www.geonames.org/maps/addresses.html#geoCodeAddress)                                    | ❌                                           | [✅](http://api.geonames.org/geoCodeAddress?q=Museumplein+6+amsterdam\u0026username=demo)                                                                    | [✅](http://api.geonames.org/geoCodeAddressJSON?q=Museumplein+6+amsterdam\u0026username=demo)                                                                                   | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [streetNameLookup](https://www.geonames.org/maps/addresses.html#streetNameLookup)                                | ❌                                           | [✅](http://api.geonames.org/streetNameLookup?q=Museum\u0026country=NL\u0026username=demo)                                                                        | [✅](http://api.geonames.org/streetNameLookupJSON?q=Museum\u0026country=NL\u0026username=demo)                                                                                       | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [get](https://www.geonames.org/export/web-services.html#get)                                                     | [✅](./webservice/get.go)                    | [✅](http://api.geonames.org/get?geonameId=6295630\u0026username=demo\u0026style=full)                                                                            | [✅](http://api.geonames.org/getJSON?formatted=true\u0026geonameId=6295630\u0026username=demo\u0026style=full)                                                                            | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [gtopo30](https://www.geonames.org/export/web-services.html#gtopo30)                                             | ❌                                           | [✅](http://api.geonames.org/gtopo30?lat=47.01\u0026lng=10.2\u0026username=demo\u0026style=full\u0026type=XML)                                                              | [✅](http://api.geonames.org/gtopo30JSON?formatted=true\u0026lat=47.01\u0026lng=10.2\u0026username=demo\u0026style=full)                                                                       | ❌                                                                                           | ❌                                                                                       | [✅](http://api.geonames.org/gtopo30?lat=47.01\u0026lng=10.2\u0026username=demo\u0026style=full)     | ❌                                                                                                                    | ❌                                                                                                                             |\n| [hierarchy](https://www.geonames.org/export/place-hierarchy.html#hierarchy)                                      | ❌                                           | [✅](http://api.geonames.org/hierarchy?geonameId=2657896\u0026username=demo\u0026style=full)                                                                      | [✅](http://api.geonames.org/hierarchyJSON?formatted=true\u0026geonameId=2657896\u0026username=demo\u0026style=full)                                                                      | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [neighbourhood](https://www.geonames.org/export/web-services.html#neighbourhood)                                 | ❌                                           | [✅](http://api.geonames.org/neighbourhood?lat=40.78343\u0026lng=-73.96625\u0026username=demo\u0026style=full)                                                         | [✅](http://api.geonames.org/neighbourhoodJSON?formatted=true\u0026lat=40.78343\u0026lng=-73.96625\u0026username=demo\u0026style=full)                                                         | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [neighbours](https://www.geonames.org/export/place-hierarchy.html#neighbours)                                    | ❌                                           | [✅](http://api.geonames.org/neighbours?geonameId=2658434\u0026username=demo\u0026style=full)                                                                     | [✅](http://api.geonames.org/neighboursJSON?formatted=true\u0026geonameId=2658434\u0026username=demo\u0026style=full)                                                                     | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [ocean](https://www.geonames.org/export/web-services.html#ocean )                                                | ❌                                           | [✅](http://api.geonames.org/ocean?lat=40.78343\u0026lng=-43.96625\u0026username=demo\u0026style=full)                                                                 | [✅](http://api.geonames.org/oceanJSON?formatted=true\u0026lat=40.78343\u0026lng=-43.96625\u0026username=demo\u0026style=full)                                                                 | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [postalCodeCountryInfo](https://www.geonames.org/export/web-services.html#postalCodeCountryInfo)                 | ❌                                           | [✅](http://api.geonames.org/postalCodeCountryInfo?\u0026username=demo\u0026style=full)                                                                           | [✅](http://api.geonames.org/postalCodeCountryInfoJSON?formatted=true\u0026\u0026username=demo\u0026style=full)                                                                           | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [postalCodeLookup](https://www.geonames.org/export/web-services.html#postalCodeLookupJSON)                       | [✅](./webservice/postal_code_lookup.go)     | ❌                                                                                                                                                      | [✅](http://api.geonames.org/postalCodeLookupJSON?formatted=true\u0026postalcode=6600\u0026country=AT\u0026username=demo\u0026style=full)                                                      | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [postalCodeSearch](https://www.geonames.org/export/web-services.html#postalCodeSearch)                           | [✅](./webservice/postal_code_search.go)     | [✅](http://api.geonames.org/postalCodeSearch?postalcode=9011\u0026maxRows=10\u0026username=demo\u0026style=full)                                                      | [✅](http://api.geonames.org/postalCodeSearchJSON?formatted=true\u0026postalcode=9011\u0026maxRows=10\u0026username=demo\u0026style=full)                                                      | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [rssToGeo](https://www.geonames.org/rss-to-georss-converter.html)                                                | ❌                                           | ❌                                                                                                                                                      | ❌                                                                                                                                                                         | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | [✅](http://api.geonames.org/rssToGeoRSS?feedUrl=http://feeds.reuters.com/reuters/worldNews\u0026username=demo\u0026style=full) | [✅](http://api.geonames.org/rssToGeoRSS?type=kml\u0026feedUrl=http://feeds.reuters.com/reuters/worldNews\u0026username=demo\u0026style=full) |\n| [search](https://www.geonames.org/export/geonames-search.html)                                                   | [✅](./webservice/search.go)                 | [✅](http://api.geonames.org/search?q=london\u0026maxRows=10\u0026lang=es\u0026username=demo\u0026style=full)                                                               | [✅](http://api.geonames.org/searchJSON?formatted=true\u0026q=london\u0026maxRows=10\u0026lang=es\u0026username=demo\u0026style=full)                                                               | [✅](http://api.geonames.org/searchRDF?q=london\u0026maxRows=10\u0026lang=es\u0026username=demo\u0026style=full) | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [siblings](https://www.geonames.org/export/place-hierarchy.html#siblings)                                        | ❌                                           | [✅](http://api.geonames.org/siblings?geonameId=3017382\u0026username=demo\u0026style=full)                                                                       | [✅](http://api.geonames.org/siblingsJSON?formatted=true\u0026geonameId=3017382\u0026username=demo\u0026style=full)                                                                       | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [srtm1](https://www.geonames.org/export/web-services.html#srtm1)                                                 | ❌                                           | [✅](http://api.geonames.org/srtm1XML?lat=50.01\u0026lng=10.2\u0026username=demo\u0026style=full)                                                                      | [✅](http://api.geonames.org/srtm1JSON?formatted=true\u0026lat=50.01\u0026lng=10.2\u0026username=demo\u0026style=full)                                                                         | ❌                                                                                           | ❌                                                                                       | [✅](http://api.geonames.org/srtm1?lat=50.01\u0026lng=10.2\u0026username=demo\u0026style=full)       | ❌                                                                                                                    | ❌                                                                                                                             |\n| [srtm3](https://www.geonames.org/export/web-services.html#srtm3)                                                 | ❌                                           | [✅](http://api.geonames.org/srtm3XML?lat=50.01\u0026lng=10.2\u0026username=demo\u0026style=full)                                                                      | [✅](http://api.geonames.org/srtm3JSON?formatted=true\u0026lat=50.01\u0026lng=10.2\u0026username=demo\u0026style=full)                                                                         | ❌                                                                                           | ❌                                                                                       | [✅](http://api.geonames.org/srtm3?lat=50.01\u0026lng=10.2\u0026username=demo\u0026style=full)       | ❌                                                                                                                    | ❌                                                                                                                             |\n| [timezone](https://www.geonames.org/export/web-services.html#timezone)                                           | [✅](./webservice/timezone.go)               | [✅](http://api.geonames.org/timezone?lat=47.01\u0026lng=10.2\u0026username=demo\u0026style=full)                                                                      | [✅](http://api.geonames.org/timezoneJSON?formatted=true\u0026lat=47.01\u0026lng=10.2\u0026username=demo\u0026style=full)                                                                      | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [weather](https://www.geonames.org/export/JSON-webservices.html#weatherJSON)                                     | ❌                                           | [✅](http://api.geonames.org/weather?north=44.1\u0026south=-9.9\u0026east=-22.4\u0026west=55.2\u0026username=demo\u0026style=full)                                               | [✅](http://api.geonames.org/weatherJSON?formatted=true\u0026north=44.1\u0026south=-9.9\u0026east=-22.4\u0026west=55.2\u0026username=demo\u0026style=full)                                               | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [weatherIcao](https://www.geonames.org/export/JSON-webservices.html#weatherIcaoJSON)                             | ❌                                           | [✅](http://api.geonames.org/weatherIcao?ICAO=LSZH\u0026username=demo\u0026style=full)                                                                            | [✅](http://api.geonames.org/weatherIcaoJSON?formatted=true\u0026ICAO=LSZH\u0026username=demo\u0026style=full)                                                                            | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [wikipediaBoundingBox](https://www.geonames.org/export/wikipedia-webservice.html#wikipediaBoundingBox)           | [✅](./webservice/wikipedia_bounding_box.go) | [✅](http://api.geonames.org/wikipediaBoundingBox?north=44.1\u0026south=-9.9\u0026east=-22.4\u0026west=55.2\u0026username=demo\u0026style=full)                                  | [✅](http://api.geonames.org/wikipediaBoundingBoxJSON?formatted=true\u0026north=44.1\u0026south=-9.9\u0026east=-22.4\u0026west=55.2\u0026username=demo\u0026style=full)                                  | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n| [wikipediaSearch](https://www.geonames.org/export/wikipedia-webservice.html#wikipediaSearch)                     | [✅](./webservice/wikipedia_search.go)       | [✅](http://api.geonames.org/wikipediaSearch?q=london\u0026maxRows=10\u0026username=demo\u0026style=full)                                                              | [✅](http://api.geonames.org/wikipediaSearchJSON?formatted=true\u0026q=london\u0026maxRows=10\u0026username=demo\u0026style=full)                                                              | ❌                                                                                           | ❌                                                                                       | ❌                                                                                    | ❌                                                                                                                    | ❌                                                                                                                             |\n\n# Download\n\n### Download usage example\n```go\npackage main\n\nimport (\n\t\"context\"\n\t\"fmt\"\n\t\"log\"\n\n\t\"github.com/platx/geonames/download\"\n)\n\nfunc main() {\n\tclient := download.NewClient()\n\terr := client.AllCountries(context.Background(), func(parsed download.GeoName) error {\n\t\tfmt.Println(parsed)\n\t\t\n\t\treturn nil\n\t})\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\t\n}\n```\n\n### Supported files\nRefer to the following table to check supported and implemented files (emoji ✅ is clickable).\n\n| File name                                                                                | Implemented                                      | Description                                                                                                                                                                                                                                                                              |\n|------------------------------------------------------------------------------------------|--------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| XX.zip                                                                                   | [✅](./download/by_country.go)                    | features for country with iso code XX, see 'geoname' table for columns.                                                                                                                                                                                                                  |\n| [no-country.zip](https://download.geonames.org/export/dump/no-country.zip)               | [✅](./download/no_country.go)                    | features not belonging to a country.                                                                                                                                                                                                                                                     |\n| [allCountries.zip](https://download.geonames.org/export/dump/allCountries.zip)           | [✅](./download/all_countries.go)                 | all countries combined in one file, see 'geoname' table for columns.                                                                                                                                                                                                                     |\n| [cities500.zip](https://download.geonames.org/export/dump/cities500.zip)                 | [✅](./download/cities.go)                        | all cities with a population \u003e 500 or seats of adm div down to PPLA4 (ca 185.000), see 'geoname' table for columns.                                                                                                                                                                      |\n| [cities1000.zip](https://download.geonames.org/export/dump/cities1000.zip)               | [✅](./download/cities.go)                        | all cities with a population \u003e 1000 or seats of adm div down to PPLA3 (ca 130.000), see 'geoname' table for columns.                                                                                                                                                                     |\n| [cities5000.zip](https://download.geonames.org/export/dump/cities5000.zip)               | [✅](./download/cities.go)                        | all cities with a population \u003e 5000 or PPLA (ca 50.000), see 'geoname' table for columns.                                                                                                                                                                                                |\n| [cities15000.zip](https://download.geonames.org/export/dump/cities15000.zip)             | [✅](./download/cities.go)                        | all cities with a population \u003e 15000 or capitals (ca 25.000), see 'geoname' table for columns.                                                                                                                                                                                           |\n| [alternateNamesV2.zip](https://download.geonames.org/export/dump/alternateNamesV2.zip)   | [✅](./download/alternate_names.go)               | alternate names with language codes and geonameId, file with iso language codes, with new columns from and to.                                                                                                                                                                           |\n| [alternateNames.zip](https://download.geonames.org/export/dump/alternateNames.zip)       | ❌                                                | obsolete use V2, this file does not have the new columns to and from and will be removed in the future.                                                                                                                                                                                  |\n| [admin1CodesASCII.txt](https://download.geonames.org/export/dump/admin1CodesASCII.txt)   | [✅](./download/admin_division.go)                | names in English for admin divisions. Columns: code, name, name ascii, geonameid.                                                                                                                                                                                                        |\n| [admin2Codes.txt](https://download.geonames.org/export/dump/admin2Codes.txt)             | [✅](./download/admin_division.go)                | names for administrative subdivision 'admin2 code' (UTF8), Format : concatenated codes \u003ctab\u003ename \u003ctab\u003e asciiname \u003ctab\u003e geonameId.                                                                                                                                                        |\n| [iso-languagecodes.txt](https://download.geonames.org/export/dump/iso-languagecodes.txt) | [✅](./download/languages.go)                     | iso 639 language codes, as used for alternate names in file alternateNames.zip.                                                                                                                                                                                                          |\n| featureCodes_xx.txt                                                                      | [✅](./download/feature_codes.go)                 | name and description for feature classes and feature codes.                                                                                                                                                                                                                              |\n| [timeZones.txt](https://download.geonames.org/export/dump/timeZones.txt)                 | [✅](./download/time_zones.go)                    | countryCode, timezoneId, gmt offset on 1st of January, dst offset to gmt on 1st of July (of the current year), rawOffset without DST.                                                                                                                                                    |\n| [countryInfo.txt](https://download.geonames.org/export/dump/countryInfo.txt)             | [✅](./download/country_info.go)                  | country information : iso codes, fips codes, languages, capital ,...                                                                                                                                                                                                                     |\n| modifications-{date}.txt                                                                 | [✅](./download/modifications.go)                 | all records modified on the previous day, the date is in yyyy-MM-dd format. You can use this file to daily synchronize your own geonames database.                                                                                                                                       |\n| deletes-{date}.txt                                                                       | [✅](./download/deletes.go)                       | all records deleted on the previous day, format : geonameId \u003ctab\u003e name \u003ctab\u003e comment.                                                                                                                                                                                                    |\n| alternateNamesModifications-{date}.txt                                                   | [✅](./download/alternate_names_modifications.go) | all alternate names modified on the previous day.                                                                                                                                                                                                                                        |\n| alternateNamesDeletes-{date}.txt                                                         | [✅](./download/alternate_names_deletes.go)       | all alternate names deleted on the previous day, format : alternateNameId \u003ctab\u003e geonameId \u003ctab\u003e name \u003ctab\u003e comment.                                                                                                                                                                      |\n| [userTags.zip](https://download.geonames.org/export/dump/userTags.zip)                   | [✅](./download/user_tags.go)                     | user tags , format : geonameId \u003ctab\u003e tag.                                                                                                                                                                                                                                                |\n| [hierarchy.zip](https://download.geonames.org/export/dump/hierarchy.zip)                 | [✅](./download/hierarchy.go)                     | parentId, childId, type. The type 'ADM' stands for the admin hierarchy modeled by the admin1-4 codes. The other entries are entered with the user interface. The relation toponym-adm hierarchy is not included in the file, it can instead be built from the admincodes of the toponym. |\n| [adminCode5.zip](https://download.geonames.org/export/dump/adminCode5.zip)               | [✅](./download/admin_division.go)                | the new adm5 column is not yet exported in the other files (in order to not break import scripts). Instead it is availabe as separate file.                                                                                                                                              |\n\n# License\n\n* This package is licensed under the [MIT License](./LICENSE). Feel free to use it in your open-source and commercial projects.\n* GeoNames data is free and licensed under the [Creative Commons Attribution 3.0 License](https://creativecommons.org/licenses/by/3.0/). You should give credit to GeoNames when using data or web services with a link or another reference to GeoNames.\n\n# Contribution\n\nFeel free to submit issues and pull requests to improve functionality and coverage. Please make sure to add tests for new features.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fplatx%2Fgeonames","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fplatx%2Fgeonames","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fplatx%2Fgeonames/lists"}