A tiny and blazing fast HTTP based microservice for extremely minimal geoip location lookups.
This is a work-in-progress experimental Rust port of tinygeoip (by the same author). It is additionally built on top of rapidly evolving unstable crates and language features, so should not be used in production just quite yet.
Identical to tinygeoip, so for now, go there for documentation.
TODO
Compile with standard Rust toolchain or download a binary for your platform from the Releases page.
nanogeoip 0.1.0
A tiny (and blazing fast!) geoip lookup microservice
USAGE:
nanogeoip [OPTIONS] [db]
FLAGS:
-h, --help Prints help information
-V, --version Prints version information
OPTIONS:
-a <addr> Address to listen for connections on [default: 0.0.0.0]
-o <origin> 'Access-Control-Allow-Origin' header [default: *]
-p <port> Port to listen for connections on [default: 9000]
ARGS:
<db> MaxMind database file [default: data/GeoLite2-City.mmdb]
For more information, see the Rust Docs. (Note: these are only built online for tagged and pushed releases on crates.io, so you'll have to build locally if you need them right now.)
🚧 The current API is considered unstable. This is just being
released and I'd like some feedback to make any potential changes before tagging
a v1.0
which will maintain API stability.
In other words, comments and feedback wanted!
This is still in progress and is not yet considered released software yet. Please contact me if you have a need for a license ASAP.
Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.