Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ellenhp/airmail
Lightweight geocoder in pure Rust
https://github.com/ellenhp/airmail
Last synced: 3 months ago
JSON representation
Lightweight geocoder in pure Rust
- Host: GitHub
- URL: https://github.com/ellenhp/airmail
- Owner: ellenhp
- License: apache-2.0
- Created: 2024-01-27T03:53:02.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-06-19T19:44:43.000Z (5 months ago)
- Last Synced: 2024-06-25T14:34:55.189Z (5 months ago)
- Language: Rust
- Homepage: https://airmail.rs/
- Size: 5.03 MB
- Stars: 286
- Watchers: 10
- Forks: 2
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
- License: LICENSE_APACHE
Awesome Lists containing this project
- awesome-georust - Airmail - Lightweight geocoder in pure Rust. (Watchlist)
README
# 📫 Airmail 📫
Airmail is an extremely lightweight geocoder[^1] written in pure Rust. Built on top of [tantivy](https://github.com/quickwit-oss/tantivy), it offers a low memory footprint and fast indexing (index the planet in under 3 hours!). Airmail aims to support international queries in several languages, but in practice it's still very early days and there are definitely bugs preventing correct behavior.
[^1]: A geocoder is a search engine for places. When you type in "vegan donut shop" into your maps app of choice, a geocoder is what shows you nearby places that fit your query.
### Features
Airmail's killer feature is the ability to query remote indices, e.g. on S3. This lets you keep your index hosting costs fixed while you scale horizontally. The baseline cost of a global Airmail deployment is about $5 per month.
### Roadmap
- [x] English/North American query parser for addresses, place names, and place name queries with locality or neighborhood.
- [x] Index OpenStreetMap data.
- [ ] Index OpenAddresses data (not currently used in demo).
- [ ] Index WhosOnFirst data.
- [x] API server.
- [x] Address queries.
- [x] Named POI queries.
- [x] Prefix queries.
- [x] Query remote indices.
- [x] Support and test planet-scale indices.
- [x] International address queries.
- [x] Categorical search, e.g. "coffee shop seattle".
- [x] Typo tolerance (limited to >=8 character input tokens)
- [x] Bounding box restriction.
- [ ] Focus point queries.
- [ ] Systematic/automatic quality testing in CI.### License
Dual MIT/Apache 2 license, at your option.