From 98bd4a508020fbc9fcee35d3a4c451d2a382c0cf Mon Sep 17 00:00:00 2001 From: Lukas Heumos Date: Sun, 23 Aug 2026 19:40:13 +0200 Subject: [PATCH 1/3] Link to AnnData interoperability docs from packages and learn pages The packages page already claimed that building on common data structures ensures interoperability, without backing that claim with anything concrete. The Getting Started intro never mentioned that scverse data is reachable outside Python at all. Both now link to the AnnData interoperability page, which lists the R, Julia, JavaScript, and Rust implementations and is maintained upstream, so the list cannot go stale here. Closes #74 Signed-off-by: Lukas Heumos --- content/learn/_index.md | 1 + content/packages/_index.md | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/content/learn/_index.md b/content/learn/_index.md index a948412..e146a90 100644 --- a/content/learn/_index.md +++ b/content/learn/_index.md @@ -5,6 +5,7 @@ tutorials_intro = """\ If you are new to the scverse, get started with this set of tutorials covering basic analysis and functionality of the core packages. For more tutorials as well as API documentation and user guides, see the sites of [individual packages](/packages/). Beyond the core packages, the scverse [ecosystem](/packages/#ecosystem) contains many community-maintained packages that build on scverse data structures and integrate into standard workflows. +If you work primarily in another language, AnnData files can be read from [R, Julia, JavaScript, and Rust](https://anndata.readthedocs.io/en/latest/interoperability.html). You can also find recordings of past talks and workshops on our [YouTube channel](https://www.youtube.com/channel/UCpsvsIAW3R5OdftJKKuLNMA). """ diff --git a/content/packages/_index.md b/content/packages/_index.md index f170caa..6845b7c 100644 --- a/content/packages/_index.md +++ b/content/packages/_index.md @@ -4,7 +4,10 @@ aliases = ["/projects/"] [[sections]] core_packages = "These packages are considered foundational in that many other packages build upon them. Joint maintenance by the core team guarantees long-term stability." - datastructures = "Data structures are the foundational building block for all scverse packages. Building upon common data structures ensures interoperability." + datastructures = """\ +Data structures are the foundational building block for all scverse packages. +Building upon common data structures ensures interoperability. +The on-disk formats are also language-agnostic: AnnData files can be read from [R, Julia, JavaScript, and Rust](https://anndata.readthedocs.io/en/latest/interoperability.html).""" datastructures_post = "In addition to these packages, we define standards on how to represent certain data types in these data structures. For now, such a specification is available for [Adaptive Immune Receptor Repertoire (AIRR) data](https://scirpy.scverse.org/en/latest/data-structure.html#storing-airr-rearrangement-data-in-anndata)." frameworks = "Frameworks provide essential algorithms and plotting functions for specific analysis steps, building on our data structures." ecosystem = "Many popular packages rely on scverse functionality. For instance, they take advantage of established data format standards such as AnnData and MuData, or are designed to be integrated into the workflow of analysis frameworks. Here, we list ecosystem packages following development best practices (continuous testing, documented, available through standard distribution tools).\n\n *See [scverse/ecosystem-packages](https://github.com/scverse/ecosystem-packages) for inclusion criteria, and to submit more packages.*" From ee8a5ef253493327bd0513960e230c9897054098 Mon Sep 17 00:00:00 2001 From: Lukas Heumos Date: Sun, 23 Aug 2026 19:45:01 +0200 Subject: [PATCH 2/3] Cover all three data structures consistently The first pass only named AnnData, in a blurb that heads all three cards. mudata and spatialdata gained interoperability pages of their own this month (scverse/mudata#189, scverse/spatialdata#1180), so each card now carries an Interoperability link and the section blurb no longer singles one format out. The mudata card loses its Muon.jl chip: with a sibling Interoperability link that lists Muon.jl alongside the R options, a Julia-only chip reads as arbitrary. Signed-off-by: Lukas Heumos --- content/learn/_index.md | 2 +- content/packages/_index.md | 13 +++++++++---- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/content/learn/_index.md b/content/learn/_index.md index e146a90..0b294a4 100644 --- a/content/learn/_index.md +++ b/content/learn/_index.md @@ -5,7 +5,7 @@ tutorials_intro = """\ If you are new to the scverse, get started with this set of tutorials covering basic analysis and functionality of the core packages. For more tutorials as well as API documentation and user guides, see the sites of [individual packages](/packages/). Beyond the core packages, the scverse [ecosystem](/packages/#ecosystem) contains many community-maintained packages that build on scverse data structures and integrate into standard workflows. -If you work primarily in another language, AnnData files can be read from [R, Julia, JavaScript, and Rust](https://anndata.readthedocs.io/en/latest/interoperability.html). +If you work primarily in another language, the scverse on-disk formats can be read from R, Julia, and beyond, as covered by the interoperability pages for [AnnData](https://anndata.scverse.org/en/stable/interoperability.html), [MuData](https://mudata.readthedocs.io/stable/interoperability.html), and [SpatialData](https://spatialdata.scverse.org/en/latest/interoperability.html). You can also find recordings of past talks and workshops on our [YouTube channel](https://www.youtube.com/channel/UCpsvsIAW3R5OdftJKKuLNMA). """ diff --git a/content/packages/_index.md b/content/packages/_index.md index 6845b7c..ab19f4e 100644 --- a/content/packages/_index.md +++ b/content/packages/_index.md @@ -7,7 +7,7 @@ aliases = ["/projects/"] datastructures = """\ Data structures are the foundational building block for all scverse packages. Building upon common data structures ensures interoperability. -The on-disk formats are also language-agnostic: AnnData files can be read from [R, Julia, JavaScript, and Rust](https://anndata.readthedocs.io/en/latest/interoperability.html).""" +The on-disk formats are language-agnostic as well: each can be read from R, Julia, and other languages, as listed on the interoperability pages linked below.""" datastructures_post = "In addition to these packages, we define standards on how to represent certain data types in these data structures. For now, such a specification is available for [Adaptive Immune Receptor Repertoire (AIRR) data](https://scirpy.scverse.org/en/latest/data-structure.html#storing-airr-rearrangement-data-in-anndata)." frameworks = "Frameworks provide essential algorithms and plotting functions for specific analysis steps, building on our data structures." ecosystem = "Many popular packages rely on scverse functionality. For instance, they take advantage of established data format standards such as AnnData and MuData, or are designed to be integrated into the workflow of analysis frameworks. Here, we list ecosystem packages following development best practices (continuous testing, documented, available through standard distribution tools).\n\n *See [scverse/ecosystem-packages](https://github.com/scverse/ecosystem-packages) for inclusion criteria, and to submit more packages.*" @@ -30,6 +30,9 @@ The on-disk formats are also language-agnostic: AnnData files can be read from [ [[datastructures.links]] text = "Conda" url = "https://anaconda.org/conda-forge/anndata" + [[datastructures.links]] + text = "Interoperability" + url = "https://anndata.scverse.org/en/stable/interoperability.html" [[datastructures]] name = "mudata" @@ -50,8 +53,8 @@ The on-disk formats are also language-agnostic: AnnData files can be read from [ text = "Conda" url = "https://anaconda.org/conda-forge/mudata" [[datastructures.links]] - text = "Muon.jl" - url = "https://github.com/scverse/Muon.jl" + text = "Interoperability" + url = "https://mudata.readthedocs.io/stable/interoperability.html" [[datastructures]] name = "spatialdata" @@ -71,7 +74,9 @@ The on-disk formats are also language-agnostic: AnnData files can be read from [ [[datastructures.links]] text = "spatialdata-io" url = "https://github.com/scverse/spatialdata-io" - + [[datastructures.links]] + text = "Interoperability" + url = "https://spatialdata.scverse.org/en/latest/interoperability.html" [[packages]] name = "scanpy" From 0538c9e339c0617932a09ee41a7cefbc1c685b3a Mon Sep 17 00:00:00 2001 From: Lukas Heumos Date: Sun, 23 Aug 2026 19:48:41 +0200 Subject: [PATCH 3/3] Point the spatialdata link at stable Currently 404s because the interoperability page is not in a release yet; it resolves once the next spatialdata release ships. Signed-off-by: Lukas Heumos --- content/learn/_index.md | 2 +- content/packages/_index.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/content/learn/_index.md b/content/learn/_index.md index 0b294a4..715f27d 100644 --- a/content/learn/_index.md +++ b/content/learn/_index.md @@ -5,7 +5,7 @@ tutorials_intro = """\ If you are new to the scverse, get started with this set of tutorials covering basic analysis and functionality of the core packages. For more tutorials as well as API documentation and user guides, see the sites of [individual packages](/packages/). Beyond the core packages, the scverse [ecosystem](/packages/#ecosystem) contains many community-maintained packages that build on scverse data structures and integrate into standard workflows. -If you work primarily in another language, the scverse on-disk formats can be read from R, Julia, and beyond, as covered by the interoperability pages for [AnnData](https://anndata.scverse.org/en/stable/interoperability.html), [MuData](https://mudata.readthedocs.io/stable/interoperability.html), and [SpatialData](https://spatialdata.scverse.org/en/latest/interoperability.html). +If you work primarily in another language, the scverse on-disk formats can be read from R, Julia, and beyond, as covered by the interoperability pages for [AnnData](https://anndata.scverse.org/en/stable/interoperability.html), [MuData](https://mudata.readthedocs.io/stable/interoperability.html), and [SpatialData](https://spatialdata.scverse.org/en/stable/interoperability.html). You can also find recordings of past talks and workshops on our [YouTube channel](https://www.youtube.com/channel/UCpsvsIAW3R5OdftJKKuLNMA). """ diff --git a/content/packages/_index.md b/content/packages/_index.md index ab19f4e..97d1920 100644 --- a/content/packages/_index.md +++ b/content/packages/_index.md @@ -76,7 +76,7 @@ The on-disk formats are language-agnostic as well: each can be read from R, Juli url = "https://github.com/scverse/spatialdata-io" [[datastructures.links]] text = "Interoperability" - url = "https://spatialdata.scverse.org/en/latest/interoperability.html" + url = "https://spatialdata.scverse.org/en/stable/interoperability.html" [[packages]] name = "scanpy"