Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Lonboard integration

Open
#32 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
25/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Stale
Tech stack
python
Domain
data, frontend

Research direction

Start with the Lonboard PR #1179 and the linked lonboard-zarr-support-design.md specification, then read issue #29 about xarray's async API. Trace how Lonboard and deck.gl-raster are expected to split non-spatial and spatial selection and how async tile loads return data to the browser. Done would be a defined integration supporting the described viewport chunk loading and future animated stacks.

Written by the indexing model from the issue text.

Description

https://github.com/developmentseed/lonboard/pull/1179 is starting to prototype what a Lonboard-xarray integration looks like. See https://github.com/developmentseed/lonboard/blob/d9eae7c022d6813b15ed5d2687348926e2c78249/dev-docs/superpowers/specs/2026-04-23-lonboard-zarr-support-design.md for ideas brainstormed with claude.

  • The user will define the selection over the non-spatial dimensions; Lonboard/deck.gl-raster will define the per-chunk selection over the spatial dimensions.
    • When the user moves the frontend map, deck.gl issues a tile request, which reaches the Python side of Lonboard, and then Lonboard issues an async tile load for that tile. When the async task finishes, it sends the data back to the frontend to be visualized.
    • So Lonboard will issue a separate xarray async load for each of the spatial chunks that are currently visible in the viewport.
    • Because the user's Python session is fetching all of the chunks in the viewport concurrently, the callback must be async. Hence why I'm looking to use xarray's async API (ref #29)
  • Medium term work will move an entire 4D stack of raw pixel data to the browser, which can then be animated in the browser

I think this will be really cool to do arbitrary band math on animated COG data cubes on the fly

Dominant language
Python
Stars
55
Forks
1
PR merge metrics
No merged PRs in 30d

Getting set up

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.

More from developmentseed/lazycogs

All issues in developmentseed/lazycogs

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.