25 releases
Uses new Rust 2024
| 0.9.4 | Dec 5, 2025 |
|---|---|
| 0.9.3 | Sep 25, 2025 |
| 0.9.0 | Aug 19, 2025 |
| 0.8.0 | Mar 31, 2025 |
| 0.3.1 | Mar 17, 2023 |
#18 in Geospatial
63,029 downloads per month
Used in 14 crates
3MB
8K
SLoC
h3o
Rust implementation of the H3 geospatial indexing system.
Design
This is not a binding of the reference implementation, but a reimplementation from scratch.
The goals are:
- To be safer/harder to misuse by leveraging the strong typing of Rust.
- To be 100% Rust (no C deps): painless compilation to WASM, easier LTO, …
- To be as fast (or even faster when possible) than the reference library.
Installation
Cargo
- Install the rust toolchain in order to have cargo installed by following this guide.
- run
cargo install h3o
Usage
use h3o::{LatLng, Resolution};
let coord = LatLng::new(37.769377, -122.388903).expect("valid coord");
let cell = coord.to_cell(Resolution::Nine);
Why this name?
Rust is an iron oxide. A Rust version of H3 is an H3 oxide, in other word $H_3O$ (a.k.a hydronium). Chemically speaking this is wrong ( $H_3O$ is produced by protonation of $H_2O$, not oxidation of $H_3$), but ¯\(ツ)/¯
License
Dependencies
~0.7–3.5MB
~52K SLoC