Using Marimo with SpatialData

Hi all,

I’ve been experimenting with Marimo recently and appreciate its reactive, immutable execution model. However, I’m running into some friction when trying to use it together with SpatialData.

A lot of typical workflows in scverse rely on in-place mutations (e.g., modifying .obs , .var , or layers directly), which doesn’t seem to align well with Marimo’s approach. In particular, these in-place updates can interfere with change tracking and reactivity.

I’m curious if others have tried combining these tools and found workable patterns. For example:

  • Do you avoid in-place operations and return modified copies instead?
  • Do you structure transformations differently (e.g., fewer, more consolidated steps)?
  • Or does this combination end up being more cumbersome than it’s worth?

I’d be interested to hear any experiences, recommendations, or design patterns that make this setup more ergonomic.

Thanks!