stac-utils / stac-utils/stac-fastapi

Help on extending STAC FastAPI capabilities

Open
#942 8 comments 3 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
324
Forks
126
Avg merge
1d 22h
Merged PRs (30d)
10

Description

Hello,

First of all, thanks for your extensive work around STAC and making it easy to setup a whole working API. I'm working on a project to offer perspective imagery from Wikimedia Commons through a STAC API, to make it compatible with Panoramax. My work in progress is published here.

I'm currently using various components, which work quite nicely:

  • STAC Fast API
  • PgSTAC backend (with a custom import logic, as my data is already in a PostGIS database)

This allows me to have a working STAC API for showing collections and items (which is great! That's 90% of the job done without much hassle). However, to make it compatible with Panoramax, I need to enable more extensions and add specific API routes (listed here):

I did search in STAC FastAPI documentation, and messed a bit with the code (tried to adapt Transaction extension code to serve tiles for example). However, I feel like it's difficult to get started.

So, my questions are:

  • Is there a practical guide somewhere I missed on how to add and support other STAC extensions ?
  • Similarly, is there a guide on how to implement supplementary API route (with access to database, proper naming and model validation...) ?
  • Would it be interesting for STAC FastAPI to have these extensions made available in this core repository ?

Thank you in advance for your help, I hope this discussion could make getting started easier for newcomers 😃

Best regards

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the STAC FastAPI documentation and the existing stac_fastapi/extensions/transaction implementation, then compare its extension and route patterns with the Panoramax compatibility requirements linked in the issue. A useful outcome would document how to add STAC extensions and supplementary database-backed routes, and clarify whether the requested capabilities belong in the core repository.

Written by the indexing model from the issue text.

Assessment

Tech stack
fastapi, python
Domain
api, backend, documentation
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.