Skip to main content

Python library for working with the SpatioTemporal Asset Catalog (STAC) specification

Project description

PySTAC

Build Status PyPI version Conda (channel only) Documentation codecov Gitter License

PySTAC is a library for working with the SpatioTemporal Asset Catalog specification in Python 3.

Installation

Install from PyPi (recommended)

python -m pip install pystac

If you would like to enable the validation feature utilizing the jsonschema project, install with the optional validation requirements:

python -m pip install 'pystac[validation]'

If you would like to use the orjson instead of the standard json library for JSON serialization/deserialization, install with the optional orjson requirements:

python -m pip install 'pystac[orjson]'

If you would like to use a custom RetryStacIO class for automatically retrying network requests when reading with PySTAC, or if you have non-ASCII characters in your urls you'll need urllib3:

python -m pip install 'pystac[urllib3]'

If you are using jupyter notebooks and want to enable pretty display of pystac objects you'll need jinja2

python -m pip install 'pystac[jinja2]'

Install from source

git clone https://github.com/stac-utils/pystac.git
cd pystac
python -m pip install .

See the installation page for more options.

Versioning

The core PySTAC API follows Semantic Versioning. As of Spring 2026, our extension implementations have moved to their own Python packages, so they can be versioned independently of the core PySTAC API. Breaking changes to the API of extension packages are not considered breaking changes for the purposes of PySTAC versioning.

The STAC extension packages' version will match the version extension itself, e.g. pystac-ext-projection v2.0.0 corresponds to the v2.0.0 release of the projection extension. Any changes to the software (not the extension) will be released via post releases.

Documentation

See the documentation page for the latest docs.

Developing

See contributing docs for details on contributing to this project.

Running the quickstart and tutorials

There is a quickstart and tutorials written as jupyter notebooks in the docs/tutorials folder. To run the notebooks, run a jupyter notebook with the docs directory as the notebook directory:

jupyter notebook --ip 0.0.0.0 --port 8888 --notebook-dir=docs

You can then navigate to the notebooks and execute them.

Requires Jupyter be installed.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pystac-1.15.0rc1.tar.gz (5.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pystac-1.15.0rc1-py3-none-any.whl (5.1 kB view details)

Uploaded Python 3

File details

Details for the file pystac-1.15.0rc1.tar.gz.

File metadata

  • Download URL: pystac-1.15.0rc1.tar.gz
  • Upload date:
  • Size: 5.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for pystac-1.15.0rc1.tar.gz
Algorithm Hash digest
SHA256 a1c56e472abe1febcfacc5fea077916420bf7e95d0a9be1262581a7746a1e05b
MD5 1bd1faf87cb48d9ecccc8c9b8ce90e50
BLAKE2b-256 bfb7daf0c5898936cf5add1c4ee37d8f27fdb8dcb819de2f110c7e89eb61be32

See more details on using hashes here.

Provenance

The following attestation bundles were made for pystac-1.15.0rc1.tar.gz:

Publisher: release.yml on stac-utils/pystac

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pystac-1.15.0rc1-py3-none-any.whl.

File metadata

  • Download URL: pystac-1.15.0rc1-py3-none-any.whl
  • Upload date:
  • Size: 5.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for pystac-1.15.0rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 7d789e65fcfd8028c2c21e4e0ff81ac539665590fc64d1bd6aa5e649e207d043
MD5 9caa9af1451a014f9516b87ff704bc52
BLAKE2b-256 e25ef64070eb470c28b471acfd514fac47aa574fd6d77adcb93fcc44d69534df

See more details on using hashes here.

Provenance

The following attestation bundles were made for pystac-1.15.0rc1-py3-none-any.whl:

Publisher: release.yml on stac-utils/pystac

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page