https://github.com/HydroniumLabs/h3o
Rust implementation of the H3 geospatial indexing system.
https://github.com/HydroniumLabs/h3o
Last synced: 17 days ago
JSON representation
Rust implementation of the H3 geospatial indexing system.
- Host: GitHub
- URL: https://github.com/HydroniumLabs/h3o
- Owner: HydroniumLabs
- License: bsd-3-clause
- Created: 2022-12-09T14:04:23.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2025-03-31T20:33:35.000Z (about 1 month ago)
- Last Synced: 2025-03-31T21:26:08.465Z (about 1 month ago)
- Language: Rust
- Homepage:
- Size: 3.1 MB
- Stars: 348
- Watchers: 13
- Forks: 28
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- awesome-georust - h3o - Rust implementation of the H3 geospatial indexing system. (Watchlist)
README
# h3o
[](https://crates.io/crates/h3o)
[](https://docs.rs/h3o)
[](https://github.com/HydroniumLabs/h3o/actions)
[](https://app.codecov.io/gh/HydroniumLabs/h3o)
[](https://opensource.org/licenses/BSD-3-Clause)[Rust](https://rustlang.org) implementation of the [H3](https://h3geo.org)
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](https://www.rust-lang.org/tools/install) guide.
* run `cargo install h3o`## Usage
```rust
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
[BSD 3-Clause](./LICENSE)