@devoxa/ip-geolocation
v3.0.0
Published
Resolve an IP address into a geolocation (continent, country, subdivision, city & lat/long)
Downloads
798
Readme
Installation
:warning: Before installing this make sure you understand the license!
yarn add @devoxa/ip-geolocation
This module will automatically download a ~85MB IP geolocation database from db-ip.com in a postinstall step.
Usage
import { geolocateIp } from '@devoxa/ip-geolocation'
// Lookup an IP address
// This will take about 50ms and use about 95MB of memory until garbage collected
const result = await geolocateIp('69.10.63.243')
// {
// continent: { code: 'NA', name: 'North America' },
// country: { code: 'US', name: 'United States', isInEuropeanUnion: false },
// subdivision: { name: 'New Jersey' },
// city: { name: 'Secaucus' },
// location: { latitude: 40.7861, longitude: -74.0743 },
// }
Contributing
# Download the database for testing
yarn postinstall src/
# Run the tests
yarn test
Contributors
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!
License
MIT
:warning: The module will also automatically download and use a ~85MB IP geolocation database from db-ip.com. This database is licensed under a Creative Commons Attribution 4.0 International License. You are free to use this database in your application, provided you give attribution to DB-IP.com for the data.
In the case of a web application, you must include a link back to DB-IP.com on pages that display or use results from the database:
<a href="https://db-ip.com">IP Geolocation by DB-IP</a>