Skip to content

Schema, functions and a python library for storing and accessing STAC collections and items in PostgreSQL

License

Notifications You must be signed in to change notification settings

stac-utils/pgstac

Folders and files

NameName
Last commit message
Last commit date

Latest commit

f96cbde · Apr 10, 2025
Mar 5, 2024
Mar 10, 2025
Apr 10, 2025
Mar 27, 2025
Dec 6, 2024
Apr 10, 2025
Sep 19, 2023
Mar 27, 2025
Dec 6, 2024
Apr 10, 2025
May 13, 2024
Apr 6, 2022
Mar 5, 2024
Oct 14, 2024

Repository files navigation

PostgreSQL schema and functions for Spatio-Temporal Asset Catalog (STAC)

Test Package version License


Documentation: https://stac-utils.github.io/pgstac/

Source Code: https://github.com/stac-utils/pgstac


PgSTAC is a set of SQL functions and schema to build highly performant databases for Spatio-Temporal Asset Catalogs (STAC). The project also provides pypgstac (a Python module) to help with database migrations and document ingestion (collections and items).

PgSTAC provides functionality for STAC Filters, CQL2 search, and utilities to help manage the indexing and partitioning of STAC Collections and Items.

PgSTAC is used in production to scale to hundreds of millions of STAC items. PgSTAC implements core data models and functions to provide a STAC API from a PostgreSQL database. PgSTAC is entirely within the database and does not provide an HTTP-facing API. The STAC FastAPI PgSTAC backend and Franklin can be used to expose a PgSTAC catalog. Integrating PgSTAC with any other language with PostgreSQL drivers is also possible.

PgSTAC Documentation: https://stac-utils.github.io/pgstac/pgstac

pyPgSTAC Documentation: https://stac-utils.github.io/pgstac/pypgstac

Project structure

/
 ├── src/pypgstac           - pyPgSTAC python module
 ├── src/pypgstac/tests/    - pyPgSTAC tests
 ├── scripts/               - scripts to set up the environment, create migrations, and run tests
 ├── src/pgstac/sql/        - PgSTAC SQL code
 ├── src/pgstac/migrations/ - Migrations for incremental upgrades
 └── src/pgstac/tests/      - test suite

Contribution & Development

See CONTRIBUTING.md

License

See LICENSE

Authors

See contributors for a listing of individual contributors.

Changes

See CHANGELOG.md.