Crates.io | stac-server |
lib.rs | stac-server |
version | 0.3.2 |
source | src |
created_at | 2024-04-29 20:43:02.826771 |
updated_at | 2024-11-12 18:44:11.255512 |
description | SpatioTemporal Asset Catalog (STAC) API server |
homepage | https://stac-utils.github.io/stac-rs |
repository | https://github.com/stac-utils/stac-rs |
max_upload_size | |
id | 1224485 |
size | 447,239 |
A STAC API server with multiple backends.
To run a server from the command-line, use stac-cli. Any arguments will be interpreted as hrefs to STAC collections, items, and item collections, and will be loaded into the server on startup.
stac serve collection.json items.json
To use the pgstac backend:
stac serve --pgstac postgresql://username:password@localhost:5432/postgis
If you'd like to serve your own pgstac backend with some sample items:
docker compose up -d pgstac
scripts/load-pgstac-fixtures # This might take a while, e.g. 30 seconds or so
To use this library in another application:
[dependencies]
stac-server = "0.3"
There is currently no infrastructure-as-code for deploying stac-server. We hope to provide this support in the future.
stac-server has two optional features.
The axum
feature enables routing and serving using axum.
In order to use the pgstac, you need to enable the pgstac
feature.
This table lists the provided backends and their supported conformance classes and extensions:
Capability | Memory backend | Pgstac backend |
---|---|---|
STAC API - Core | ✅ | ✅ |
STAC API - Features | ✅ | ✅ |
STAC API - Item Search | ✅ | ✅ |
Aggregation extension | ✖️ | ✖️ |
Browseable extension | ✖️ | ✖️ |
Children extension | ✖️ | ✖️ |
Collection search extension | ✖️ | ✖️ |
Collection transaction extension | ✖️ | ✖️ |
Fields extension | ✖️ | ✖️ |
Filter extension | ✖️ | ✅️ |
Free-text search extension | ✖️ | ✖️ |
Language (I18N) extension | ✖️ | ✖️ |
Query extension | ✖️ | ✖️ |
Sort extension | ✖️ | ✖️ |
Transaction extension | ✖️ | ✖️ |
This crate is part of the stac-rs monorepo, see its README for contributing and license information.