Skip to content

Latest commit

 

History

History
148 lines (98 loc) · 8.42 KB

implementations.md

File metadata and controls

148 lines (98 loc) · 8.42 KB

Implementations

This document lists the various implementations of the SpatioTemporal Asset Catalog specification. Contributions to the spec should be based on experience building API's for imagery and other geo-asset catalogs, so suggested changes / improvements to the spec should be based on some software listed here. All listed implementations should have a link to a live server or static catalog that indexes real data, though they do not have to be production ready or have any guarantee of uptime. If a live server is not possible then a link to open source code is also acceptable.

Browsable online version are usually powered by stac-browser unless otherwise stated.

Static Catalog Examples

Spacenet (STAC 0.6)

Spacenet has made all their imagery available as STAC.

CBERS-4 (STAC 0.6 and 0.5)

CBERS-4 is maintaining a full STAC Catalog, and keeping it up to date with the spec for versions 0.6 and 0.5.

The source code is available from https://github.com/fredliporace/cbers-2-stac

STAC items are published to public SNS topics as soon as new scenes are ingested into AWS.

STAC 0.6

STAC 0.5

Landsat-8 on AWS (STAC 0.6)

This catalog contains all Landsat-8 metadata from the Earth on AWS program.

Sentinel-2 on AWS (STAC 0.6)

This catalog contains all Sentinel-2 metadata from the Earth on AWS program.

ISERV (STAC 0.6 and 0.4.1)

ISERV data is hosted by Radiant Earth, created by Azavea (0.4.1) and Radiant Earth (0.6.1).

Planet Disaster Data (STAC 0.6)

Planet maintains a very small, hand-built catalog to serve as a reference example of the spec.

DigitalGlobe (STAC 0.4.1)

DigitalGlobe has a few examples of how they represent their data as STAC Items.

API (Active Catalog) Examples

Boundless STAC Server (0.6)

sat-api (0.6)

Development Seed's sat-api is an easily deployable open-source API that can ingest data from any STAC static catalog. Development Seed also runs a deployed instance that contains publicly available satellite imagery available on AWS.

The latest API should contain the latest available STAC version, while the development API will contain the next version (and may not include all items).

openEO Earth Engine driver (0.6)

Mirrors the Google Earth Engine dataset catalogue for data discovery within the openEO Earth Engine driver:

Ecosystem

Other software related to STAC like validators, crawlers etc.

  • STAC Validator is a Python library for validating STAC catalogs and items.
  • sat-stac is a Python library and CLI for creating and updating static STAC catalogs.
  • sat-search is a Python library and CLI for searching (and saving) a dynamic STAC API.
  • Serverless STAC Crawler is a static STAC crawler that runs on Lambda and SQS integration.
  • STAC Browser generates/renders browsable HTML versions of STAC catalogs.
  • STAC.cloud is a domain for demoing the easy publishing of browsable versions of any online catalog, powered by STAC Browser. Anyone with a catalog to share is welcome to jump on the STAC Gitter and someone there will be able to help set up (your-name).stac.cloud.
    • Note: Eventually STAC Browsers should be published at URL's that more match the catalog publisher, as the STAC vision is one of decentralized nodes, embracing web principles. STAC.cloud is just a way to easily show our progress.

Early prototypes / not updated

A list of software developed as early prototypes for the proof of concept or seem to be outdated (no activity in more than six months).

Harris STAC Server

Contains a number of Landsat records:

Others

  • Geocatalogo is a Go implementation of STAC.
  • Catalog Crawler was done during the Boulder Sprint, as an early proof of concept.
  • py-stac was used to create the ISERV catalog. It is still pretty tied to that data type.
  • go-stac does validation of static catalogs.
  • Open Imagery Network was the first attempt at a static catalog. The OpenAerialMap bucket is in active use. It is planned to evolve OIN and OAM architectures to use static catalogs.
  • AWS Public Datasets, particularly Landsat, NAIP and Sentinel all get close to the ideas of STAC static catalogs, and hopefully will evolve to implement the standard.
  • Josh Fix's open-catalog demonstrates generating code from the core swagger spec.
  • Element84 made a clojure implementation of the spec that serves as a lightweight proxy to NASA's CMR, constrained to just data in USGS EROS.

Information about the software implementations that have been informing the evolution of the specification can be found at https://github.com/radiantearth/catalog-implementor-survey