Installation
stac-catalog is a Python package that installs a stac-catalog command. The
serving stack (pgSTAC, STAC FastAPI, TiTiler, STAC Browser) runs from Docker
Compose and does not need to be installed on the host.
Prerequisites
- Python 3.11+
- Docker + Docker Compose — for the serving stack (see Getting started)
- (Optional) a local Postgres is not required — the Compose stack ships its own pgSTAC database.
Install the package
From a checkout of the catalog repository:
git clone https://codeberg.org/stac-gis/catalog.git
cd catalog
Create a virtual environment and install the package in editable mode:
python3 -m venv .venv
source .venv/bin/activate
python -m pip install -e .
This gives you the core CLI with CSV support.
Optional extras
Install the package with the extras you need:
# Google Sheets metadata source
python -m pip install -e ".[gsheet]"
# Loading into pgSTAC (installs pypgstac)
python -m pip install -e ".[pgstac]"
# Both extras
python -m pip install -e ".[gsheet,pgstac]"
:::note pgstac extra is required for load / sync
The load command shells out to pypgstac. If it is missing, you will get a
clear error telling you to install the pgstac extra.
:::
Development and tests
python -m pip install -e ".[gsheet,pgstac,test]"
pytest -q
Verify the install
stac-catalog --help
stac-catalog generate --help
stac-catalog load --help
stac-catalog sync --help
You should see the three subcommands — generate, load, and sync — each
with their options. Ready to run your first catalog? Continue to
Getting started.