Skip to main content
`Ctrl`+`K`

# Installation

## Install from PyPi (recommended)

    pip install pystac

## Install from conda-forge

    conda install -c conda-forge pystac

## Install from source

    pip install git+https://github.com/stac-utils/pystac.git

## Dependencies

PySTAC requires Python >= 3.10. This project follows the recommendations of NEP-29 in deprecating support for Python versions. This means that users can expect support for Python 3.10 to be removed from the `main` branch after Apr 04, 2025 and therefore from the next release after that date.

As a foundational component of the Python STAC ecosystem used in a number of downstream libraries, PySTAC aims to minimize its dependencies. As a result, the only dependency for the basic PySTAC library is python-dateutil.

PySTAC also has the following extras, which can be optionally installed to provide additional functionality:

- `validation`

  Installs the additional jsonschema dependency. When this dependency is installed, the validation methods may be used to validate STAC objects against the appropriate JSON schemas.

  To install:

      pip install pystac[validation]

- `orjson`

  Installs the additional orjson dependency. When this dependency is installed, orjson will be used as the default JSON serialization/deserialization for all operations in PySTAC.

  To install:

      pip install pystac[orjson]

- `urllib3`

  Installs the additional urllib3 dependency. For now, this is only used in `pystac.stac_io.RetryStacIO`, but it may be used more extensively in the future.

  To install:

      pip install pystac[urllib3]

- `jinja2`

  Installs the additional jinja2 dependency. When this dependency is installed, jupyter notebooks display pretty representations of PySTAC objects

  To install:

      pip install pystac[jinja2]

## Versions

To install a version of PySTAC that works with a specific versions of the STAC specification, install the matching version of PySTAC from the following table.

PySTAC | STAC
--- | ---
1.x | 1.0.x
0.5.x | 1.0.0-beta.*
0.4.x | 0.9.x
0.3.x | 0.8.x

For instance, to work with STAC v0.9.x:

>     pip install pystac==0.4.0

STAC spec versions below 0.8 are not supported by PySTAC.