{"id":24835780,"url":"https://github.com/tobilg/geolocateurl","last_synced_at":"2026-07-12T21:01:41.633Z","repository":{"id":22830245,"uuid":"26177321","full_name":"tobilg/GeoLocateURL","owner":"tobilg","description":"Node.js project to get geo information from an URL.","archived":false,"fork":false,"pushed_at":"2014-11-24T10:14:17.000Z","size":156,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-23T15:47:53.068Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tobilg.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-11-04T16:21:17.000Z","updated_at":"2014-11-24T11:04:58.000Z","dependencies_parsed_at":"2022-08-17T17:00:35.039Z","dependency_job_id":null,"html_url":"https://github.com/tobilg/GeoLocateURL","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/tobilg/GeoLocateURL","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tobilg%2FGeoLocateURL","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tobilg%2FGeoLocateURL/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tobilg%2FGeoLocateURL/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tobilg%2FGeoLocateURL/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tobilg","download_url":"https://codeload.github.com/tobilg/GeoLocateURL/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tobilg%2FGeoLocateURL/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35402742,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-12T02:00:06.386Z","response_time":87,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2025-01-31T04:51:45.263Z","updated_at":"2026-07-12T21:01:41.615Z","avatar_url":"https://github.com/tobilg.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# GeoLocateURL\n\nGeoLocateURL is a WebService implemented with NodeJS which takes an URL and returns the URL's IP address, ISO country code and country name and other information if found. It utilizes the MaxMind GeoLite2 Free database available at [http://dev.maxmind.com/geoip/geoip2/geolite2/](http://dev.maxmind.com/geoip/geoip2/geolite2/) for its IP lookups.\n\n## Installation\n\n### Prerequisites\n\nTo run this project, a valid install of NodeJS is required. You can check your installation by running `node --version` in your command shell.\n\n### Checkout the project from Github to a local folder\n\n`git clone git@github.com:tobilg/GeoLocateURL.git`\n\n### Download GeoLite2 Free\n\nDownload the database from [http://geolite.maxmind.com/download/geoip/database/GeoLite2-Country.mmdb.gz](http://geolite.maxmind.com/download/geoip/database/GeoLite2-Country.mmdb.gz) and unzip the contents to the project's subfolder `db`\n\n### Install module dependencies\n\nNavigate to the folder where you checked out the project to in your console. Run `npm install`. The module `maxmind-db-reader` should be installed successfully.\n\n### Run the WebService\n\nNavigate to the folder where you checked out the project to in your console. Run `npm start`.\n\nTo access the WebService via a browser, use `http://localhost:8080/?url=http://www.google.com`. This will return something like\n\n```javascript\n{\n    \"url\": \"www.google.com\",\n    \"ip\": \"173.194.39.19\",\n    \"country\": \"United States\",\n    \"countryIsoCode\": \"US\",\n    \"city\": \"Mountain View\",\n    \"subdivision\": \"California\",\n    \"location\": {\n        \"lat\": 37.419200000000004,\n        \"lng\": -122.0574\n    }\n}\n```\n\nThe first four properties are always returned if the IP address from the URL was valid. The other properties are returned if found in the GeoLite2 database. Please URL encode the URL in question first.\n\nIf you specify the additional URL parameter `lang` by choosing one result language of the following codes [\"de\", \"en\", \"es\", \"fr\", \"ja\", \"pt-br\", \"ru\", \"zh-cn\"], you'll receive translated results. For example `http://localhost:8080/?lang=ja\u0026url=http://www.google.com` will return something like\n\n```javascript\n{\n    \"url\": \"www.google.com\",\n    \"ip\": \"173.194.39.18\",\n    \"country\": \"アメリカ合衆国\",\n    \"countryIsoCode\": \"US\",\n    \"city\": \"マウンテンビュー\",\n    \"subdivision\": \"カリフォルニア州\",\n    \"location\": {\n        \"lat\": 37.419200000000004,\n        \"lng\": -122.0574\n    }\n}\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftobilg%2Fgeolocateurl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftobilg%2Fgeolocateurl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftobilg%2Fgeolocateurl/lists"}