stac-utils / stac-utils/stac-fastapi
Help on extending STAC FastAPI capabilities
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):
- STAC extension Perspective imagery
- STAC extension Web Map Links
- A
GET /api/map/{z}/{x}/{y}.mvtroute, for serving vector tiles of collections & items
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
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- 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