Skip to content

Commit f6b0453

Browse files
authored
docs: Update top-level rust README (#1167)
1 parent bb0e8ba commit f6b0453

File tree

6 files changed

+40
-19
lines changed

6 files changed

+40
-19
lines changed

README.md

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,16 @@ A Rust implementation of the [GeoArrow](https://github.com/geoarrow/geoarrow) sp
99

1010
This repository also includes [Python bindings](https://github.com/geoarrow/geoarrow-rs/blob/main/python/README.md) and [JavaScript (WebAssembly) bindings](https://github.com/geoarrow/geoarrow-rs/blob/main/js/README.md), wrapping the GeoArrow memory layout and offering vectorized geometry operations.
1111

12+
## Documentation
13+
14+
[**Documentation Website**](https://geoarrow.org/geoarrow-rs/)
15+
16+
<!-- - [Use from Rust](https://geoarrow.org/geoarrow-rs/rust) -->
17+
<!-- - [Use from Python](https://geoarrow.org/geoarrow-rs/python) -->
18+
<!-- - [Use from JavaScript](https://geoarrow.org/geoarrow-rs/js)
19+
- [Create your own Rust-JavaScript library with `wasm-bindgen`](https://docs.rs/geoarrow-wasm/latest/geoarrow_wasm/) -->
20+
<!-- - [Create your own Rust-Python library with `pyo3-geoarrow`](https://docs.rs/geoarrow-wasm/latest/geoarrow_wasm/) -->
21+
1222
## Project Status
1323

1424
May 7, 2025
@@ -34,21 +44,6 @@ These smaller crates are designed to mimic the upstream `arrow` crates as much a
3444
- Python bindings: unstable
3545
- JS bindings: unstable
3646

37-
## Documentation
38-
39-
[**Documentation Website**](https://geoarrow.org/geoarrow-rs/)
40-
41-
<!--
42-
- [Use from Rust](https://docs.rs/geoarrow/latest/geoarrow/)
43-
- [Use from Python](https://geoarrow.org/geoarrow-rs/python)
44-
- [Use from JavaScript](https://geoarrow.org/geoarrow-rs/js)
45-
- [Create your own Rust-JavaScript library with `wasm-bindgen`](https://docs.rs/geoarrow-wasm/latest/geoarrow_wasm/) -->
46-
<!-- - [Create your own Rust-Python library with `pyo3-geoarrow`](https://docs.rs/geoarrow-wasm/latest/geoarrow_wasm/) -->
47-
48-
## Examples
49-
50-
- [Rust examples](rust/geoarrow/examples/README.md)
51-
5247
## References
5348

5449
- [Prototyping GeoRust + GeoArrow in WebAssembly](https://observablehq.com/@kylebarron/prototyping-georust-geoarrow-in-webassembly) gives an early preview of the JavaScript API.

docs/README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,10 @@ doesn't touch the `js/` or `python/` directories, which are deployed separately.
1616
uv run mkdocs build
1717
git checkout gh-pages
1818
cd ..
19+
git pull
1920
rm -rf 404.html assets index.html sitemap.xml sitemap.xml.gz search stylesheets
2021
mv -f docs/site/* ./
21-
git add 404.html assets index.html sitemap.xml sitemap.xml.gz search stylesheets
22+
git add 404.html assets index.html sitemap.xml sitemap.xml.gz search stylesheets rust
2223
git commit -m "New revision of top-level docs site"
2324
git push
2425
# Return to previous branch

docs/source/index.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@ The geoarrow-rs repository contains a Rust implementation, Python bindings, and
88

99
---
1010

11-
Create your own Rust library or application on top of the `geoarrow` Rust crate.
11+
Create your own Rust library or application on top of the `geoarrow-*` Rust crates.
1212

13-
[:octicons-arrow-right-24: Documentation](https://docs.rs/geoarrow/latest/geoarrow/)
13+
[:octicons-arrow-right-24: Documentation](./rust.md)
1414

1515
- :material-language-python:{ .lg .middle } **Python bindings**
1616

docs/source/rust.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../../rust/README.md

rust/README.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# GeoArrow Rust crates
2+
3+
[![GitHub Workflow Status (CI)](https://img.shields.io/github/actions/workflow/status/geoarrow/geoarrow-rs/ci.yml?branch=main)](https://github.com/geoarrow/geoarrow-rs/actions/workflows/ci.yml)
4+
![Crates.io](https://img.shields.io/crates/l/geoarrow)
5+
6+
A Rust implementation of the [GeoArrow](https://github.com/geoarrow/geoarrow) specification.
7+
8+
<!-- and bindings to [GeoRust algorithms](https://github.com/georust/geo) for efficient spatial operations on GeoArrow memory. -->
9+
10+
## Crates
11+
12+
The `geoarrow-rs` repo is currently undergoing a large refactor from a single crate (`geoarrow`) to a monorepo of smaller crates, each with a more well-defined scope. As of May 2025, avoid using the `geoarrow` crate and instead use the newer crates with a smaller scope, like `geoarrow-array` and `geoarrow-schema`.
13+
14+
| Name | Description | Stability | Version | Docs |
15+
| --------------------- | -------------------------------------------------------------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ |
16+
| `geoarrow-array` | GeoArrow array definitions. | Pretty stable | [![Crates.io](https://img.shields.io/crates/v/geoarrow-array)](https://crates.io/crates/geoarrow-array) | [![docs.rs](https://img.shields.io/docsrs/geoarrow-array?label=docs.rs)](https://docs.rs/geoarrow-array) |
17+
| `geoarrow-cast` | Functions for converting from one GeoArrow geometry type to another. | Pretty stable | [![Crates.io](https://img.shields.io/crates/v/geoarrow-cast)](https://crates.io/crates/geoarrow-cast) | [![docs.rs](https://img.shields.io/docsrs/geoarrow-cast?label=docs.rs)](https://docs.rs/geoarrow-cast) |
18+
| `geoarrow-flatgeobuf` | Reader and writer for FlatGeobuf files to GeoArrow memory. | Somewhat stable | [![Crates.io](https://img.shields.io/crates/v/geoarrow-flatgeobuf)](https://crates.io/crates/geoarrow-flatgeobuf) | [![docs.rs](https://img.shields.io/docsrs/geoarrow-flatgeobuf?label=docs.rs)](https://docs.rs/geoarrow-flatgeobuf) |
19+
| `geoarrow-schema` | GeoArrow geometry type and metadata definitions. | Pretty stable | [![Crates.io](https://img.shields.io/crates/v/geoarrow-schema)](https://crates.io/crates/geoarrow-schema) | [![docs.rs](https://img.shields.io/docsrs/geoarrow-schema?label=docs.rs)](https://docs.rs/geoarrow-schema) |
20+
| `geoparquet` | GeoParquet reader and writer. | Unstable (a refactor is expected soon) | [![Crates.io](https://img.shields.io/crates/v/geoparquet)](https://crates.io/crates/geoparquet) | [![docs.rs](https://img.shields.io/docsrs/geoparquet?label=docs.rs)](https://docs.rs/geoparquet) |
21+
22+
## Versioning
23+
24+
These crates may diverge in versioning to allow for some sub-crates to receive breaking changes while not forcing a breaking version change to all crates. However, all crates will receive a new breaking version at least every 3 months, as the upstream `arrow-rs` crates currently publish a breaking version every 3 months.

rust/geoparquet/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ authors = { workspace = true }
66
edition = { workspace = true }
77
license = { workspace = true }
88
repository = { workspace = true }
9-
description = "Rust implementation of GeoArrow"
9+
description = "GeoParquet reader and writer."
1010
categories = { workspace = true }
1111
rust-version = { workspace = true }
1212

0 commit comments

Comments
 (0)