From db3823b84903a511a77722c432638eef6adc6146 Mon Sep 17 00:00:00 2001 From: Lukas Heumos Date: Tue, 11 Aug 2026 13:25:03 +0200 Subject: [PATCH] Update anndata and scanpy docs URLs to scverse.org anndata and scanpy documentation moved from readthedocs.io to their own scverse.org subdomains. Versioned paths (/en/latest/X, /en/stable/X) become /page/X on the new domains. Mirrors scverse/ecosystem-packages#367. --- content/_index.md | 4 ++-- content/about/mission/_index.md | 2 +- content/about/roles/_index.md | 2 +- content/blog/2025-07-biomni.md | 6 +++--- content/blog/2025-anndata-012.md | 12 ++++++------ content/blog/2026-gget-joins-scverse.md | 4 ++-- content/learn/_index.md | 2 +- content/packages/_index.md | 10 +++++----- 8 files changed, 21 insertions(+), 21 deletions(-) diff --git a/content/_index.md b/content/_index.md index 3890cd5..397caf6 100644 --- a/content/_index.md +++ b/content/_index.md @@ -7,7 +7,7 @@ description = "Foundational tools for single-cell omics data analysis" [[packages]] name = "anndata" description = "Standard for annotated matrices" - url = "https://anndata.readthedocs.io/en/latest/" + url = "https://anndata.scverse.org/" [[packages]] name = "mudata" @@ -22,7 +22,7 @@ description = "Foundational tools for single-cell omics data analysis" [[packages]] name = "scanpy" description = "Single-cell analysis framework" - url = "https://scanpy.readthedocs.io/en/latest/" + url = "https://scanpy.scverse.org/" [[packages]] name = "muon" diff --git a/content/about/mission/_index.md b/content/about/mission/_index.md index bef6d40..e9d2421 100644 --- a/content/about/mission/_index.md +++ b/content/about/mission/_index.md @@ -15,7 +15,7 @@ We as scverse® want to make analysis tools for omics data in the life sciences ## Organization and vision -The growing adoption of Python for single-cell omics data analysis has been catalyzed by [Scanpy](https://genomebiology.biomedcentral.com/articles/10.1186/s13059-017-1382-0) and [AnnData](https://anndata.readthedocs.io/en/latest/). +The growing adoption of Python for single-cell omics data analysis has been catalyzed by [Scanpy](https://genomebiology.biomedcentral.com/articles/10.1186/s13059-017-1382-0) and [AnnData](https://anndata.scverse.org/). Around this infrastructure an ecosystem of packages has been created by various developers and institutions — extending single-cell analysis to different modalities and addressing challenges at the cutting-edge of single-cell research. We believe that progress in this field can't be silo'd to a few groups. To further nurture the growth of this ecosystem, we've formed a new organization -- scverse. Scverse is a consortium of tools with users and developers across the world. To sustain the utility and growth of the ecosystem, it’s essential that the core analytic tools are robust and well-maintained. This entails consistent support and improvement of tools beyond what's possible in the conventional single-lab academic setting. diff --git a/content/about/roles/_index.md b/content/about/roles/_index.md index 61061ef..038b1d7 100644 --- a/content/about/roles/_index.md +++ b/content/about/roles/_index.md @@ -30,7 +30,7 @@ Any community member can become a contributor, and all are encouraged to do so. By contributing to the project, community members can directly help to shape its future. All community members are required to adhere to our [code of conduct](/about/code_of_conduct/). -Potential contributors are encouraged to read the [Contributing Guide](https://scanpy.readthedocs.io/en/stable/dev/index.html). +Potential contributors are encouraged to read the [Contributing Guide](https://scanpy.scverse.org/page/dev/index.html). A community member becomes a contributor when the following criteria are met: diff --git a/content/blog/2025-07-biomni.md b/content/blog/2025-07-biomni.md index b49626b..461885d 100644 --- a/content/blog/2025-07-biomni.md +++ b/content/blog/2025-07-biomni.md @@ -10,7 +10,7 @@ draft = false Single-cell and spatial omics have unlocked unprecedented insights into cellular diversity, tissue architecture, and drug responses. Despite the remarkable progress in computational tools, the diversity and complexity of analyses can still pose challenges. -While the scverse ecosystem provides powerful and interoperable tools such as [Scanpy](https://scanpy.readthedocs.io/en/latest/), [scvi-tools](https://scvi-tools.org/), [Squidpy](https://squidpy.readthedocs.io/), [AnnData](https://anndata.readthedocs.io/en/latest/), [MuData](https://mudata.readthedocs.io/en/latest/), and [SpatialData](https://spatialdata.scverse.org/en/latest/), researchers can sometimes face a steep learning curve, particularly when integrating multiple analytical steps or modalities. +While the scverse ecosystem provides powerful and interoperable tools such as [Scanpy](https://scanpy.scverse.org/), [scvi-tools](https://scvi-tools.org/), [Squidpy](https://squidpy.readthedocs.io/), [AnnData](https://anndata.scverse.org/), [MuData](https://mudata.readthedocs.io/en/latest/), and [SpatialData](https://spatialdata.scverse.org/en/latest/), researchers can sometimes face a steep learning curve, particularly when integrating multiple analytical steps or modalities. Scverse is a community-driven, open-source initiative behind many of the most widely adopted Python tools in single-cell biology, known for promoting modular, interoperable, and scalable analysis across diverse modalities—from transcriptomics to spatial and immune profiling. @@ -30,7 +30,7 @@ To illustrate, here are a few examples of how Biomni equipped with scverse packa * *“Annotate cell types in this adata.h5ad, run Leiden clustering, and show a UMAP colored by CD3 and CD19 expression.”* - → Biomni invokes [Scanpy](https://scanpy.readthedocs.io/en/latest/) for preprocessing, clustering, annotation, and visualization. + → Biomni invokes [Scanpy](https://scanpy.scverse.org/) for preprocessing, clustering, annotation, and visualization. * *“Perform compositional analysis with [scCODA](https://sccoda.readthedocs.io/en/latest/) in this perturb-seq dataset.”* @@ -56,7 +56,7 @@ Instead of writing and debugging code across several libraries, you can now exec **Plans composed by Biomni:** - [✓] Load and explore the Visium .h5ad data -- [✓] [Scanpy](https://scanpy.readthedocs.io/en/latest/) QC and normalization (completed) +- [✓] [Scanpy](https://scanpy.scverse.org/) QC and normalization (completed) - [✓] [scvi-tools](https://scvi-tools.org/) integration and clustering (completed) - [✓] [celltypist](https://github.com/Teichlab/celltypist) label transfer (completed) - [✓] [scVelo](https://scvelo.readthedocs.io/) RNA velocity trajectories (completed) diff --git a/content/blog/2025-anndata-012.md b/content/blog/2025-anndata-012.md index 90e1693..06c6cd7 100644 --- a/content/blog/2025-anndata-012.md +++ b/content/blog/2025-anndata-012.md @@ -9,7 +9,7 @@ draft = false # 0.12 released We're happy to announce that `anndata` 0.12 is out now! -Check out [the changelog](https://anndata.readthedocs.io/en/stable/release-notes/index.html#v0-12-0) for a full list of changes. +Check out [the changelog](https://anndata.scverse.org/page/release-notes/index.html#v0-12-0) for a full list of changes. Here, we want to give our users a bit of a deep dive into the new functionality. We have lots of great features, like zarr v3 support (package and format), full lazy loading, and new API customisability! Let’s dive in! @@ -30,7 +30,7 @@ Thus, the new zarr v3 package on its own should provide a nice speedup, but if t Want faster cloud access? Try [obstore](https://zarr.readthedocs.io/en/latest/user-guide/storage.html#object-store) integration for rust-accelerated remote file access What about faster local reads? Many very small chunks inside shards can be taxing for the current pure-python zarr v3 pipeline. Thus scverse core developers Philipp Angerer and Ilan Gold together with Lachlan Deakin at ANU co-developed [the zarrs-python package](https://zarrs-python.readthedocs.io/en/latest/) for a python bridge to rust-based io acceleration from Lahclan’s zarrs package. -This acceleration really shines with small, heavily sharded stores! Want to try out direct-to-gpu io? kvikio has [a store for that](https://docs.rapids.ai/api/kvikio/nightly/zarr/#zarr-python-3-x), with a direct-to-GPU zstd codec is coming soon as well! And if all of these new functionalities are a lot to take in, we made [a digestible guide](https://anndata.readthedocs.io/en/stable/tutorials/zarr-v3.html) just for you. +This acceleration really shines with small, heavily sharded stores! Want to try out direct-to-gpu io? kvikio has [a store for that](https://docs.rapids.ai/api/kvikio/nightly/zarr/#zarr-python-3-x), with a direct-to-GPU zstd codec is coming soon as well! And if all of these new functionalities are a lot to take in, we made [a digestible guide](https://anndata.scverse.org/page/tutorials/zarr-v3.html) just for you. And of course, all of this new functionality has not broken our backwards compatibility. Anndata 0.12 is still fully zarr v2 compatible, both with the package and the file format. @@ -38,18 +38,18 @@ Upgrade fearlessly! ## Fully lazy file access -Moving on, we have also replaced `anndata.experimental.read_elem_as_dask` with [`anndata.experimental.read_elem_lazy`](https://anndata.readthedocs.io/en/stable/generated/anndata.experimental.read_lazy.html) and [`anndata.experimental.read_lazy`](https://anndata.readthedocs.io/en/stable/generated/anndata.experimental.read_elem_lazy.html). +Moving on, we have also replaced `anndata.experimental.read_elem_as_dask` with [`anndata.experimental.read_elem_lazy`](https://anndata.scverse.org/page/generated/anndata.experimental.read_lazy.html) and [`anndata.experimental.read_lazy`](https://anndata.scverse.org/page/generated/anndata.experimental.read_elem_lazy.html). Why? Because now your dataframes can be lazy too thanks to support from [xarray](https://docs.xarray.dev/en/stable/user-guide/index.html)! Now you can instantly and lazily inspect entire anndata stores both locally and remotely for metadata, and then fetch only subsets you need. -Mix this with zarr v3 for performant, fully lazy, fully remote (if needed) access! Want to create a new virtual in-memory anndata objects from many disparate on-disk stores? This new functionality is fully compatible with [`anndata.concat`](https://anndata.readthedocs.io/en/latest/generated/anndata.concat.html). +Mix this with zarr v3 for performant, fully lazy, fully remote (if needed) access! Want to create a new virtual in-memory anndata objects from many disparate on-disk stores? This new functionality is fully compatible with [`anndata.concat`](https://anndata.scverse.org/page/generated/anndata.concat.html). -Check out [our notebook](https://anndata.readthedocs.io/en/stable/tutorials/notebooks/read_lazy.html) to learn more about the API – thanks to [Nils Gehlenborg’s HIDIVE lab](https://hidivelab.org/) for hosting the data, and be sure to check out the [Vitessce visualisation](https://tinyurl.com/jtan4nx7) of the very same data backing the notebook. +Check out [our notebook](https://anndata.scverse.org/page/tutorials/notebooks/read_lazy.html) to learn more about the API – thanks to [Nils Gehlenborg’s HIDIVE lab](https://hidivelab.org/) for hosting the data, and be sure to check out the [Vitessce visualisation](https://tinyurl.com/jtan4nx7) of the very same data backing the notebook. This dual-access really showcases the power of smart remote data access! ## Customizable API -And if that wasn’t enough, we now have [a new way of extending the anndata API](https://anndata.readthedocs.io/en/latest/generated/anndata.register_anndata_namespace.html) contributed by one of our community members, Sri Varra. +And if that wasn’t enough, we now have [a new way of extending the anndata API](https://anndata.scverse.org/page/generated/anndata.register_anndata_namespace.html) contributed by one of our community members, Sri Varra. This contribution lets users extend the `AnnData` API easily, great for tinkering with new APIs and features but also for writing new methods directly into the `AnnData` object: ```python diff --git a/content/blog/2026-gget-joins-scverse.md b/content/blog/2026-gget-joins-scverse.md index c3f1a11..1c6ca7e 100644 --- a/content/blog/2026-gget-joins-scverse.md +++ b/content/blog/2026-gget-joins-scverse.md @@ -19,7 +19,7 @@ It was published in [*Bioinformatics* in 2023](https://academic.oup.com/bioinfor ### gget enables biological interpretation within scverse workflows Analyses built on scverse tools can be the starting point for biological interpretation. -For example, after clustering with [Scanpy](https://scanpy.readthedocs.io/) and identifying marker genes, you might want to understand what those genes do, how they are expressed across tissues, whether they are associated with disease, and how their protein products are structured. +For example, after clustering with [Scanpy](https://scanpy.scverse.org/) and identifying marker genes, you might want to understand what those genes do, how they are expressed across tissues, whether they are associated with disease, and how their protein products are structured. Without tooling answering these questions means leaving Python and visiting several web portals. gget closes that loop and is designed for exactly the questions arising at the end of a scverse analysis. @@ -52,7 +52,7 @@ gget.enrichr(markers, database="GO_Biological_Process_2023") gget.archs4(markers[0], which="tissue") ``` -The `gget.cellxgene` module returns data as [AnnData](https://anndata.readthedocs.io/) objects helping slot results directly into scverse pipelines: +The `gget.cellxgene` module returns data as [AnnData](https://anndata.scverse.org/) objects helping slot results directly into scverse pipelines: ```py # gget.cellxgene needs a one-time setup to install the cellxgene-census backend diff --git a/content/learn/_index.md b/content/learn/_index.md index b198fe7..46fcf0f 100644 --- a/content/learn/_index.md +++ b/content/learn/_index.md @@ -96,7 +96,7 @@ You can also find recordings of past talks and workshops on our [YouTube channel [[tutorials.section]] name = "Combining AnnData objects" - url = "https://anndata.readthedocs.io/en/latest/concatenation.html" + url = "https://anndata.scverse.org/page/concatenation.html" img = "../../img/libs/anndata_schema.svg" +++ diff --git a/content/packages/_index.md b/content/packages/_index.md index cfb961d..bf738a7 100644 --- a/content/packages/_index.md +++ b/content/packages/_index.md @@ -12,7 +12,7 @@ aliases = ["/projects/"] [[datastructures]] name = "anndata" description = "Standard for annotated matrices" - url = "https://anndata.readthedocs.io/en/latest/" + url = "https://anndata.scverse.org/" img = "../img/libs/anndata_schema.svg" details = "AnnData is a Python package for handling annotated data matrices in memory and on disk, positioned between pandas and xarray. anndata offers a broad range of computationally efficient features including, among others, sparse data support, lazy operations, and a PyTorch interface." [[datastructures.links]] @@ -20,7 +20,7 @@ aliases = ["/projects/"] url = "https://github.com/theislab/anndata" [[datastructures.links]] text = "Documentation" - url = "https://anndata.readthedocs.io/en/latest/" + url = "https://anndata.scverse.org/" [[datastructures.links]] text = "PyPI" url = "https://pypi.org/project/anndata/" @@ -73,8 +73,8 @@ aliases = ["/projects/"] [[packages]] name = "scanpy" description = "Single-cell analysis framework" - url = "https://scanpy.readthedocs.io/en/latest/" - #img = "https://scanpy.readthedocs.io/en/stable/_static/Scanpy_Logo_BrightFG.svg" + url = "https://scanpy.scverse.org/" + #img = "https://scanpy.scverse.org/_static/Scanpy_Logo_BrightFG.svg" img = "../img/icons/scanpy.svg" details = "Scanpy is a scalable toolkit for analyzing single-cell gene expression data built jointly with anndata. It includes preprocessing, visualization, clustering, trajectory inference and differential expression testing. The Python-based implementation efficiently deals with datasets of more than one million cells." [[packages.links]] @@ -82,7 +82,7 @@ aliases = ["/projects/"] url = "https://github.com/theislab/scanpy" [[packages.links]] text = "Documentation and tutorials" - url = "https://scanpy.readthedocs.io/en/latest/" + url = "https://scanpy.scverse.org/" [[packages.links]] text = "PyPI" url = "https://pypi.org/project/scanpy/"