stac-server
A STAC API server with multiple backends.
Usage
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
Library
To use this library in another application:
[]
= "0.2"
Deploying
There is currently no infrastructure-as-code for deploying stac-server. We hope to provide this support in the future.
Features
stac-server has two optional features.
axum
The axum feature enables routing and serving using axum.
pgstac
In order to use the pgstac, you need to enable the pgstac feature.
Backends
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 | ✖️ | ✖️ |
Other info
This crate is part of the stac-rs monorepo, see its README for contributing and license information.