{"id":13520288,"url":"https://github.com/mroth/nanogeoip","last_synced_at":"2025-05-01T22:31:00.706Z","repository":{"id":136421452,"uuid":"161837960","full_name":"mroth/nanogeoip","owner":"mroth","description":":dragon: tiny and blazing fast experimental geoip microservice","archived":true,"fork":false,"pushed_at":"2018-12-30T22:48:30.000Z","size":109,"stargazers_count":8,"open_issues_count":1,"forks_count":0,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-21T02:33:42.366Z","etag":null,"topics":["api","geoip","geolocation","microservice"],"latest_commit_sha":null,"homepage":"","language":"Rust","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/mroth.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":"CODE_OF_CONDUCT.md","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":"2018-12-14T20:38:48.000Z","updated_at":"2025-02-25T16:34:25.000Z","dependencies_parsed_at":null,"dependency_job_id":"70022061-96f5-4e82-b713-43da478c321c","html_url":"https://github.com/mroth/nanogeoip","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mroth%2Fnanogeoip","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mroth%2Fnanogeoip/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mroth%2Fnanogeoip/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mroth%2Fnanogeoip/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mroth","download_url":"https://codeload.github.com/mroth/nanogeoip/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251954856,"owners_count":21670890,"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":["api","geoip","geolocation","microservice"],"created_at":"2024-08-01T05:02:16.636Z","updated_at":"2025-05-01T22:31:00.381Z","avatar_url":"https://github.com/mroth.png","language":"Rust","funding_links":[],"categories":["Rust"],"sub_categories":[],"readme":"# nanogeoip :dragon:\n\n[![Build Status](https://travis-ci.com/mroth/nanogeoip.svg?branch=master)](https://travis-ci.com/mroth/nanogeoip)\n\n\u003c!--\n[![Docker Build](https://img.shields.io/docker/build/mrothy/nanogeoip.svg)](https://hub.docker.com/r/mrothy/nanogeoip)\n[![RustDocs](https://docs.rs/nanogeoip/badge.svg)](https://docs.rs/nanogeoip)\n--\u003e\n\nA tiny and blazing fast HTTP based microservice for extremely minimal geoip\nlocation lookups.\n\nThis is a work-in-progress experimental Rust port of [tinygeoip] (by the same\nauthor). It is additionally built on top of rapidly evolving unstable crates and\nlanguage features, so should not be used in production just quite yet.\n\n\u003c!-- It bundles into a ~2MB docker image that can serve over ~800K reqs/sec\n(uncached). --\u003e\n\n[tinygeoip]: https://github.com/mroth/tinygeoip\n\n## API\n\nIdentical to [tinygeoip], so for now, go there for documentation.\n\n## Performance\n\nTODO\n\n## Installing and running the server\n\nCompile with standard Rust toolchain or download a binary for your platform from\nthe [Releases] page.\n\n```\nnanogeoip 0.1.0\nA tiny (and blazing fast!) geoip lookup microservice\n\nUSAGE:\n    nanogeoip [OPTIONS] [db]\n\nFLAGS:\n    -h, --help       Prints help information\n    -V, --version    Prints version information\n\nOPTIONS:\n    -a \u003caddr\u003e          Address to listen for connections on [default: 0.0.0.0]\n    -o \u003corigin\u003e        'Access-Control-Allow-Origin' header [default: *]\n    -p \u003cport\u003e          Port to listen for connections on [default: 9000]\n\nARGS:\n    \u003cdb\u003e    MaxMind database file [default: data/GeoLite2-City.mmdb]\n\n```\n\n[releases]: https://github.com/mroth/tinygeoip/releases\n\n## Rust library\n\nFor more information, see the [Rust Docs]. (Note: these are only built online\nfor tagged and pushed releases on crates.io, so you'll have to build locally if\nyou need them right now.)\n\n[rust docs]: https://docs.rs/nanogeoip\n\n\u003c!-- ## Docker Image\n\nA docker image is automatically built from all tagged releases.\n\nTo utilize it, be sure to mount your MaxMindDB database as a volume so that the\nrunning container can access it.\n\n_[TODO: provide an example for folks not so familiar with Docker.]_ --\u003e\n\n## Stability\n\n:construction: The current API is considered _unstable_. This is just being\nreleased and I'd like some feedback to make any potential changes before tagging\na `v1.0` which will maintain API stability.\n\nIn other words, comments and feedback wanted!\n\n## License\n\nThis is still in progress and is not yet considered released software yet.\nPlease contact me if you have a need for a license ASAP.\n\n## Code of Conduct\n\nPlease note that this project is released with a [Contributor Code of\nConduct](CODE_OF_CONDUCT.md). By participating in this project you agree to\nabide by its terms.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmroth%2Fnanogeoip","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmroth%2Fnanogeoip","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmroth%2Fnanogeoip/lists"}