libmaxminddb
v1.0.0
Published
Node.js bindings for libmaxminddb (to read MaxMind DB with the best performance - using memory-mapped file!)
Downloads
4,424
Maintainers
Readme
libmaxminddb
Node.js bindings for libmaxminddb.
To read MaxMind Databases with the best performance (using memory-mapped files)!
This module provides its own TypeScript declarations (.d.ts).
Installation
npm install libmaxminddb
This package uses the native library libmaxminddb.
If you have a common system then a prebuilt version will be used.
Otherwise look at the advanced libmaxminddb installation instructions.
Examples
const {MmdbReader} = require('libmaxminddb');
MmdbReader.open({filename: 'GeoIP2-Country-Test.mmdb'}).then(async (mmdb) => {
const {netmask, entry} = await mmdb.lookup('50.114.1.1');
console.log(entry);
});
For a more detailed example look at demo.js (or demo.ts for TypeScript).
Documentation
For a detailed API reference, see: node-libmaxminddb.nathan818.fr
Testing
To run the test suite, you first need to clone the submodules.
git submodule init
git submodule update --recursive
Then install the dependencies and run npm run test
:
npm ci
npm run test
Contributing
Contributions are welcome. It is recommended to open an issue before introducing new features to discuss them.
Versioning
We use SemVer for versioning. For the versions available, see the tags on this repository.
Authors
License
This project is licensed under the Apache-2.0 License. See the LICENSE file for details.