FOSS4G NA 2024

stac-rs: high-performance, reliable STAC tooling with Rust
09-10, 11:00–11:30 (America/Chicago), Grand C

stac-rs is a Rust implementation of the SpatioTemporal Asset Catalog (STAC) specification. Our high-performance STAC tools include a STAC API server with duck-db and postgres backends, and our applications leverage latest developments in geoparquet and geoarrow.


The SpatioTemporal Asset Catalog (STAC) community specification is a key component of the growing cloud-native geospatial ecosystem. Well built, spec-specific tooling is a key part of the community-supported software landscape, as it helps developers and data consumers alike work efficiently with the data they need without needing to deeply understand the spec or implement the tooling themselves. We present stac-rs, a Rust implementation of the STAC spec, as part of the cloud-native geospatial software landscape.

stac-rs includes:
- A STAC API server with duck-db and pgstac backends
- A command-line interface (CLI) for querying STAC APIs and static STAC catalogs
- Several Rust libraries for building your own applications

In this talk, we walk through the components of stac-rs, describe some of the advantages and disadvantages of a Rust implementation of the STAC spec, and provide some performance benchmarks against other widely used tooling (e.g. stac-fastapi and stac-server).

See also: Slides

Pete Gadomski is a geospatial software developer based out of Longmont, CO. His focus areas include lidar, the STAC specification and its software ecosystem, writing geospatial software in Rust, and snow and ice research. In his spare time he likes to run trails and ski snow.