NASA-IMPACT / NASA-IMPACT/veda-odd

ODD PI 26.2 Objective 2: 🛠️ TiTiler-CMR maintenance + performance

Open
#305 3 comments 0 reactions 2 assignees View on GitHub

@hrodmn is already working on this.

Since Feb 9, 2026.

pi-26.2-objective repo:cogeotiff/rio-tiler repo:ds/titiler repo:ds/titiler-cmr repo:earthaccess-dev/earthaccess repo:nasa/python_cmr
Dominant language
No language data
Stars
5
Forks
0
Avg merge
4d 19h
Merged PRs (30d)
3

Description

Why us?

We are the core developers of titiler-cmr (for now)

Why now?

The titiler-cmr codebase is challenging to work on for the usual “titiler is complicated” reasons, but it is made more confusing by the backend switching logic (i.e. rasterio vs xarray). To make the application more accessible to more developers across IMPACT we should take some time to refactor the application in a way that will make debugging and developer onboarding easier.

Milestones

External dataset support and titiler-cmr production deployment

Acceptance Criteria
  • Release a titiler-cmr v1.0 which incorporates simplifications to ease developer pain
  • Performance analysis on lambda cold start times (could result in ADR or report)
How will we do it (additional goals and sub-tasks)?
  • Continuation of work on EDL credentials support (rasterio sessions, deployment, documentation)
  • release to staging and reassess priority of following improvements
  • Propose v1.0 API changes and get feedback from Vincent and other stakeholders
    • Untangle the backend-switching logic into separate tiler factory classes
    • Make backend a path parameter instead of a query parameter (separate routes for xarray and rasterio backends). Do existing routes need to still work or can we make totally breaking changes?
  • Enable more nuanced filters in queries (e.g. filter HLS on cloud cover, filter OPERA-DISP on granule start/end date), addresses https://github.com/developmentseed/titiler-cmr/issues/123
    • Can we do this with earthaccess or do we need to use a different approach to querying CMR?
  • Explore deployment or architectural alternatives to improve response times (i.e. addressing issues of cold start times, caching credentials approach)
  • Stretch:

LOE:

1 FTE for 3 sprints (v1.0 development: 1.5 sprints; performance + deployment enhancements: 1.5 sprints)

PRS

Contributor guide

No contributing guide indexed for this repository

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.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.