# scverse > scverse is a consortium of foundational, interoperable open-source tools for single-cell and spatial omics data analysis in the life sciences. scverse packages share common data structures (AnnData, MuData, SpatialData) to guarantee interoperability across the ecosystem. Most package documentation lives on dedicated external sites, linked below. This site (scverse.org) hosts the package index, tutorials, project governance, events, and the blog. Every core and community package in the scverse ecosystem registry is listed below, with what it does, how to install it and where its docs live. ## Core packages Foundational packages maintained by the scverse core team. - [AnnData](https://anndata.scverse.org/): Standard for annotated matrices. 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 GPU support. Install: `pip install anndata`. Tutorials: https://anndata.scverse.org/page/tutorials/. Other languages: [anndataR](https://anndatar.scverse.org/) (R), [anndata-rs](https://scverse.org/anndata-rs/) (Rust). Tags: data structures. - [MuData](https://mudata.readthedocs.io/): Multimodal data format. MuData is a format for annotated multimodal datasets where each modality is represented by an AnnData object. MuData’s reference implementation is in Python, and the cross-language functionality is achieved via HDF5-based .h5mu files with libraries in R and Julia. Install: `pip install mudata`. Tutorials: https://mudata.readthedocs.io/page/notebooks/quickstart_mudata.html. Other languages: [Muon.jl](https://scverse.org/Muon.jl/) (Julia). Tags: multimodal, data structures. - [SpatialData](https://spatialdata.scverse.org/): Spatial data format. SpatialData is a data framework that comprises a FAIR storage format and a collection of python libraries for performant access, alignment, and processing of uni- and multi-modal spatial omics datasets. Install: `pip install spatialdata`. Tutorials: https://spatialdata.scverse.org/page/tutorials/notebooks/notebooks.html. Tags: spatial transcriptomics, data structures, file formats. - [Scanpy](https://scanpy.scverse.org/): Single-cell analysis framework. 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. Install: `pip install scanpy`. Tutorials: https://scanpy.scverse.org/page/tutorials.html. Tags: preprocessing, differential expression, clustering, visualization. - [Muon](https://muon.readthedocs.io/): Multi-omics analysis framework. muon is a Python framework for multimodal omics analysis. It provides functionality for working with multimodal data, including preprocessing, integration, and visualization. Install: `pip install muon`. Tutorials: https://muon-tutorials.readthedocs.io/. Tags: multimodal, data integration. - [Squidpy](https://squidpy.readthedocs.io/): Spatial single-cell analysis. Squidpy is a tool for the analysis and visualization of spatial molecular data. It builds on top of scanpy and anndata, from which it inherits modularity and scalability. It provides analysis tools that leverages the spatial coordinates of the data, as well as tissue images if available. Install: `pip install squidpy`. Tutorials: https://squidpy.readthedocs.io/page/notebooks/tutorials/. Tags: spatial transcriptomics, imaging. - [scvi-tools](https://docs.scvi-tools.org/): Single-cell machine learning framework. scvi-tools is a library for developing and deploying machine learning models based on PyTorch and AnnData. With an emphasis on probabilistic models, scvi-tools streamlines the development process via training, data management, and user interface abstractions. scvi-tools also contains easy-to-use implementations of more than 14 state-of-the-art probabilistic models in the field. Install: `pip install scvi-tools`. Tutorials: https://docs.scvi-tools.org/page/tutorials/. Tags: data integration, cell-type annotation, differential expression, deep learning, probabilistic modeling. - [Scirpy](https://scirpy.scverse.org/): Single-cell immune sequencing analysis framework. Scirpy is a scalable toolkit to analyse T-cell receptor or B-cell receptor repertoires from single-cell RNA sequencing data. It seamlessly integrates with scanpy and provides various modules for data import, analysis and visualization. Install: `pip install scirpy`. Tutorials: https://scirpy.scverse.org/page/tutorials.html. Tags: immune receptor. - [SnapATAC2](https://scverse.org/SnapATAC2/): Single-cell ATAC analysis framework. SnapATAC2 is a scalable and modular pipeline for analyzing single-cell ATAC-seq data, enabling efficient preprocessing, dimensionality reduction, clustering, and integration with single-cell RNA-seq. Install: `pip install snapatac2`. Tutorials: https://scverse.org/SnapATAC2/tutorials/. Tags: ATAC-seq, epigenomics. - [rapids-singlecell](https://rapids-singlecell.readthedocs.io/): GPU-accelerated framework for scRNA analysis. rapids-singlecell is a GPU-accelerated single-cell analysis library that serves as a drop-in replacement for scanpy, squidpy, and decoupler. Install: `pip install rapids-singlecell`. Tutorials: https://rapids-singlecell.readthedocs.io/page/tutorials.html. Tags: preprocessing, clustering, GPU acceleration. - [Pertpy](https://pertpy.readthedocs.io/): Perturbation data analysis framework. Pertpy is a framework for analyzing large-scale single-cell perturbation experiments. It harmonizes datasets, automates metadata annotation, calculates perturbation distances, and analyzes cellular responses to genetic modifications, drugs, and environmental changes. Install: `pip install pertpy`. Tutorials: https://pertpy.readthedocs.io/page/tutorials.html. Tags: differential expression, perturbation. - [decoupler](https://decoupler.readthedocs.io/): Enrichment analysis framework. decoupler is a framework containing different enrichment statistical methods to extract biologically driven scores from omics data within a unified framework. Install: `pip install decoupler`. Tutorials: https://decoupler.readthedocs.io/page/notebooks/. Tags: functional analysis. ## Ecosystem packages: scRNA-seq - [benGRN](https://www.jkobject.com/benGRN): Benchmarking tool for gene network inference from single cell RNAseq methods. It uses the grnndata/anndata modality and only contains biological ground truth networks. Install: `pip install bengrn`. Tags: scRNA-seq, gene regulatory networks, benchmarking. - [biolord](https://biolord.readthedocs.io/): biolord (biological representation disentanglement) is a deep generative framework for disentangling known and unknown attributes in single-cell data. Install: `pip install biolord`. Tags: dimensionality reduction, perturbation, deep learning. - [Cell_BLAST](https://cblast.readthedocs.io/): Cell BLAST is a cell querying tool for single-cell transcriptomics data. Install: `pip install Cell-BLAST`. Tags: data integration, cell-type annotation. - [CellAnnotator](https://cell-annotator.readthedocs.io/): CellAnnotator is a lightweight tool to query large language models for cell type labels in scRNA-seq data. It can incorporate prior knowledge, and it creates consistent labels across samples in your study. Install: `pip install cell-annotator`. Tags: cell-type annotation, large language models. - [CellMapper](https://cellmapper.readthedocs.io/): CellMapper is a leightweight tool to transfer labels, expression values and embeddings from reference to query datasets using k-NN mapping. It’s fast and versatile, applicable to mapping scenarios in space, across modalities, or from an atlas to a new query dataset. Install: `pip install cellmapper`. Tags: data integration, GPU acceleration. - [CellphoneDB](https://cellphonedb.readthedocs.io/): CellphoneDB is a publicly available repository of HUMAN curated receptors, ligands and their interactions paired with a tool to interrogate your own single-cell transcriptomics data (or even bulk transcriptomics data if your samples represent pure populations!). A distinctive feature of CellphoneDB is that the subunit architecture of either ligands and receptors is taken into account, representing heteromeric complexes accurately. This is crucial, as cell communication relies on multi-subunit protein complexes that go beyond the binary representation used in most databases and studies. CellphoneDB also incorporates biosynthetic pathways in which we use the last representative enzyme as a proxy of ligand abundance, by doing so, we include interactions involving non-peptidic molecules. CellphoneDB includes only manually curated and reviewed molecular interactions with evidenced role in cellular communication. Install: `pip install cellphonedb`. Tutorials: https://github.com/ventolab/CellphoneDB/tree/master/notebooks. Tags: scRNA-seq, cell-cell communication. - [CellRank](https://cellrank.readthedocs.io/): CellRank is a toolkit to uncover cellular dynamics based on Markov state modeling of single-cell data. It contains two main modules - kernels compute cell-cell transition probabilities and estimators generate hypothesis based on these. Install: `pip install cellrank`. Tags: trajectory inference, RNA velocity, deep learning. - [cellxgene](https://docs.cellxgene.cziscience.com/): CZ CELLxGENE Annotate (pronounced “cell-by-gene”) is an interactive data explorer for single-cell datasets, such as those coming from the Human Cell Atlas. Install: `pip install cellxgene`. Tags: cell-type annotation, visualization. - [Cirrocumulus](https://cirrocumulus.readthedocs.io/): Cirrocumulus is an interactive visualization tool for large-scale single-cell genomics data. Install: `pip install cirrocumulus`. Tags: visualization. - [clone2vec](https://clone2vec.readthedocs.io/): clone2vec is a Python package for analysis of lineage tracing coupled with single-cell RNA-Seq. Install: `pip install clone2vec`. Tags: lineage tracing. - [delnx](https://delnx.readthedocs.io/): delnx is a python package for differential expression analysis of (single-cell) genomics data. It enables scalable analyses of atlas-level datasets through GPU-accelerated regression models and statistical tests implemented in JAX and provides a consistent interface to perform DE analysis with other methods, such as statsmodels and PyDESeq2. Install: `pip install delnx`. Tags: differential expression. - [DOTools_py](https://dotools-py.readthedocs.io/): Convenient and user-friendly package to streamline common workflows in single-cell RNA sequencing data analysis with improved visualisation. Install: `pip install DOtools-py`. Tags: scRNA-seq, spatial transcriptomics, visualization. - [DoubletDetection](https://doubletdetection.readthedocs.io/): DoubletDetection is a Python3 package to detect doublets (technical errors) in single-cell RNA-seq count matrices. Install: `pip install doubletdetection`. Tags: quality control. - [DRVI](https://drvi.readthedocs.io/): DRVI is a tool for the unsupervised disentanglement and integration of single-cell omics. By providing interpretable latent dimensions, it allows users to identify cellular heterogeneity and biological processes beyond traditional cell types, identify rare cell types, and highlight developmental stages. DRVI is implemented using scvi-tools and includes a set of utility functions for interacting with latent dimensions. Install: `pip install drvi-py`. Tutorials: https://drvi.readthedocs.io/page/tutorials/. Tags: data integration, dimensionality reduction, deep learning, probabilistic modeling. - [eschr](https://eschr.readthedocs.io/): ESCHR is an ensemble clustering method that provides hard clustering along with uncertainty scores and soft clustering outputs for enhanced interpretability. Install: `pip install eschr`. Tutorials: https://eschr.readthedocs.io/page/notebooks/paul15_mouse_hematopoiesis.html. Tags: clustering, probabilistic modeling. - [fava](https://github.com/mikelkou/fava/blob/main/README.md): FAVA uses Variational Autoencoders to infer functional associations from large-scale scRNA-seq (and proteomics) data. Install: `pip install favapy`. Tutorials: https://github.com/mikelkou/fava/blob/main/How_to_use_favapy_in_a_notebook.ipynb. Tags: gene regulatory networks, dimensionality reduction, deep learning. - [GPTBioInsightor](https://gptbioinsightor.readthedocs.io/): GPTBioInsightor is a tool designed for single-cell data analysis, particularly beneficial for newcomers to a biological field or those in interdisciplinary areas who may lack sufficient biological background knowledge. GPTBioInsightor utilizes the powerful capabilities of large language models to help people quickly gain knowledge and insight, enhancing their work efficiency. Install: `pip install gptbioinsightor`. Tags: deep learning, large language models. - [gssnng](https://gssnng.readthedocs.io/): Single-cell gene set scoring with nearest neighbor graph smoothed data. Install: `pip install gssnng`. Tutorials: https://github.com/IlyaLab/gssnng/tree/main/notebooks. Tags: scRNA-seq, preprocessing, functional analysis. - [hotspot](https://hotspot.readthedocs.io/): Hotspot is a tool for identifying informative genes (and gene modules) in a single-cell dataset. Install: `pip install hotspotsc`. Tags: functional analysis, gene regulatory networks. - [illico](https://github.com/remydubois/illico): illico runs fast, CPU-based, wilcoxon rank-sum tests to identify differentially expressed genes for single-cell RNA-seq data. Install: `pip install illico`. Tags: scRNA-seq, differential expression. - [infercnvpy](https://infercnvpy.readthedocs.io/): Infer copy number variation (CNV) from scRNA-seq data. Plays nicely with Scanpy. Install: `pip install infercnvpy`. Tutorials: https://infercnvpy.readthedocs.io/page/tutorials.html. Tags: copy number variation. - [kompot](https://kompot.readthedocs.io/): Statistical framework for holistic comparison of multi-condition single-cell datasets over continuous phenotypic manifolds. Kompot performs differential abundance and expression analysis agnostically to cell-type annotation or clustering, detecting differences that span the continuous manifold even when effects go in opposite directions across cell states. It models cell distributions and gene expression as continuous functions over cell state representations of arbitrary dimension (typically ~50 dimensions), enabling single-cell resolution inference with calibrated uncertainty estimates and capturing both global and cell-state-specific effects of perturbation. Install: `pip install kompot`. Tutorials: https://kompot.readthedocs.io/page/notebooks/01_getting_started.html. Tags: differential expression, compositional analysis, probabilistic modeling. - [liana](https://liana-py.readthedocs.io/): Python package to infer cell-cell communication events from omics data using a collection of methods. Install: `pip install liana`. Tags: spatial transcriptomics, cell-cell communication. - [NicheNetPy](https://saeyslab.github.io/nichenetpy/nichenetpy.html): The goal of NicheNet is to study intercellular communication from a computational perspective. NicheNet uses human or mouse gene expression data of interacting cells as input and combines this with a prior model that integrates existing knowledge on ligand-to-target signaling paths. This allows to predict ligand-receptor interactions that might drive gene expression changes in cells of interest. Install: `pip install nichenetpy`. Tutorials: https://github.com/saeyslab/nichenetpy. Tags: cell-cell communication, scRNA-seq. - [Palantir](https://palantir.readthedocs.io/): Palantir is an algorithm to align cells along differentiation trajectories. Palantir models differentiation as a stochastic process where stem cells differentiate to terminally differentiated cells by a series of steps through a low dimensional phenotypic manifold. Palantir effectively captures the continuity in cell states and the stochasticity in cell fate determination. Palantir has been designed to work with multidimensional single cell data from diverse technologies such as Mass cytometry and single cell RNA-seq. Install: `pip install palantir`. Tags: scRNA-seq, dimensionality reduction, trajectory inference. - [ParTIpy](https://partipy.readthedocs.io/): Implements Pareto task inference and archetypal analysis for analyzing functional trade-offs in single-cell and spatial omics data. Install: `pip install partipy`. Tags: dimensionality reduction. - [pegasus](https://pegasus.readthedocs.io/): Pegasus is a tool for analyzing transcriptomes of millions of single cells. Install: `pip install pegasuspy`. Tutorials: https://pegasus.readthedocs.io/page/tutorials.html. Tags: scRNA-seq, preprocessing, cell-type annotation, clustering. - [popV](https://popv.readthedocs.io/): p(opular)V(oting) is a consensus tool for transfering labels from an annotated reference dataset to an unannotated query dataset. Consensus calling allows interpretable scores that quantify certainty. Install: `pip install popv`. Tags: data integration, cell-type annotation. - [pycea](https://pycea.readthedocs.io/): Pycea is a Python toolkit for single-cell lineage tracing analysis and visualization. Install: `pip install pycea-lineage`. Tags: lineage tracing, data structures. - [pyCrossTalkeR](https://pycrosstalker.readthedocs.io): pyCrossTalkeR is a framework for network analysis and visualisation of LR networks. pyCrossTalkeR identifies relevant ligands, receptors and cell types contributing to changes in cell communication when contrasting two biological states: disease vs. homeostasis. Install: `pip install pycrosstalker`. Tags: scRNA-seq, cell-cell communication. - [pyLemur](https://pyLemur.readthedocs.io/): Python implementation of the LEMUR algorithm for analyzing multi-condition single-cell RNA-seq data. Install: `pip install pyLemur`. Tutorials: https://pylemur.readthedocs.io/page/notebooks/Tutorial.html. Tags: differential expression. - [pySCENIC](https://pyscenic.readthedocs.io/): pySCENIC is a lightning-fast python implementation of the SCENIC pipeline (Single-Cell rEgulatory Network Inference and Clustering) which enables biologists to infer transcription factors, gene regulatory networks and cell types from single-cell RNA-seq data. Install: `pip install pyscenic`. Tutorials: https://pyscenic.readthedocs.io/page/tutorial.html. Tags: gene regulatory networks, clustering. - [pyUCell](https://pyucell.readthedocs.io/): pyUCell is a package for evaluating gene signatures in single-cell datasets. pyUCell signature scores, based on the Mann-Whitney U statistic, are robust to dataset size and heterogeneity, and their calculation demands less computing time and memory than other available methods, enabling the processing of large datasets in a few minutes even on machines with limited computing power. Install: `pip install pyucell`. Tutorials: https://pyucell.readthedocs.io/page/notebooks/basic.html. Tags: functional analysis. - [scanpro](https://scanpro.readthedocs.io/): robust cell proportion analysis for single cell data. Install: `pip install scanpro`. Tutorials: https://scanpro.readthedocs.io/page/proportion_analysis.html. Tags: multimodal, compositional analysis. - [scCellFie](https://sccellfie.readthedocs.io/): scCellFie infers metabolic activities from single-cell and spatial transcriptomics and offers a variety of downstream analyses. Install: `pip install sccellfie`. Tags: spatial transcriptomics, functional analysis, cell-cell communication. - [scFates](https://scfates.readthedocs.io/): A scalable python package for tree inference and advanced pseudotime analysis from scRNAseq data. Install: `pip install scFates`. Tutorials: https://scfates.readthedocs.io/page/Tree_Analysis_Bone_marrow_fates.html. Tags: trajectory inference, pseudotime. - [scGen](https://scgen.readthedocs.io/): scGen is a generative model to predict single-cell perturbation response across cell types, studies and species. Install: `pip install scgen`. Tutorials: https://scgen.readthedocs.io/page/tutorials/. Tags: perturbation. - [schist](https://schist.readthedocs.io/): schist applies Stochastic Block Models (SBM) to the analysis of single cell data, in particular to identify cell populations. Install: `conda install -c conda-forge schist`. Tutorials: https://schist.readthedocs.io/page/tutorials.html. Tags: clustering. - [scib](https://scib.readthedocs.io/): Evaluating single-cell data integration methods. Install: `pip install scib`. Tags: data integration, benchmarking. - [scib-metrics](https://scib-metrics.readthedocs.io/): scib-metrics provides accelerated, Python-only implementations of the scIB metrics for benchmarking single-cell data integration methods, using JAX for jit-compilation and hardware acceleration. Install: `pip install scib-metrics`. Tutorials: https://scib-metrics.readthedocs.io/page/tutorials.html. Tags: data integration, benchmarking, GPU acceleration. - [scib-rapids](https://scib-rapids.readthedocs.io/): GPU-accelerated single-cell integration benchmarking metrics using RAPIDS (cuML, CuPy) as a drop-in replacement for the JAX-based metrics in scib-metrics. Install: `pip install scib-rapids`. Tags: data integration, benchmarking, GPU acceleration. - [scPRINT](https://cantinilab.github.io/scPRINT/): A single cell foundation model for Gene network inference and more…. Install: `pip install scprint`. Tags: scRNA-seq, denoising, cell-type annotation, gene regulatory networks, dimensionality reduction, deep learning, foundation model. - [scPRINT-2](https://cantinilab.github.io/scPRINT-2/): A next generation single cell foundation model. Install: `pip install scprint2`. Tags: scRNA-seq, denoising, data integration, cell-type annotation, gene regulatory networks, dimensionality reduction, perturbation, deep learning, foundation model. - [scTriangulate](https://sctriangulate.readthedocs.io/page/get_started.html): Python package to mix-and-match conflicting clustering results in single cell analysis and generate reconciled clustering solutions. Install: `pip install sctriangulate`. Tutorials: https://sctriangulate.readthedocs.io/page/tutorial.html. Tags: clustering. - [scVelo](https://scvelo.readthedocs.io/): scVelo is a scalable toolkit for RNA velocity analysis in single cells, based on Bergen et al., Nature Biotech, 2020. Install: `pip install scvelo`. Tags: RNA velocity. - [scxmatch](https://github.com/bionetslab/scxmatch): Single-cell Cross Match (scxmatch) is a is a Python package that implements Rosenbaum’s cross-match test using distance-based matching to assess distribution shifts between two groups of high-dimensional data. This is particularly useful in analyzing multivariate distributions in structured data, such as single-cell RNA-seq or ATAC-seq. Install: `conda install -c bioconda scxmatch`. Tags: scRNA-seq, perturbation, probabilistic modeling. - [sift-sc](https://sift-sc.readthedocs.io/): SiFT is a computational framework which aims to uncover the underlying structure by filtering out previously exposed biological signals. SiFT can be applied to a wide range of tasks, from (i) the removal of unwanted variation as a pre-processing step, through (ii) revealing hidden biological structure by utilizing prior knowledge with respect to existing signal, to (iii) uncovering trajectories of interest using reference data to remove unwanted variation. Install: `pip install sift-sc`. Tags: preprocessing. - [Sobolev Alignment](https://sobolev-alignment.readthedocs.io/): Sobolev alignment of deep probabilistic models for comparing single cell profiles from pre-clinical models and patients. Install: `pip install sobolev-alignment`. Tags: scRNA-seq, deep learning, probabilistic modeling. - [Symphonypy](https://github.com/potulabe/symphonypy): Symphonypy is a pure Python port of Symphony label transfer algorithm for reference-based cell type annotation. Install: `pip install symphonypy`. Tags: cell-type annotation. - [TAU Community Detection](https://github.com/HillelCharbit/TAU#readme): Evolutionary graph community detection combining genetic search with Leiden refinement, with native support for clustering Scanpy neighbor graphs stored in AnnData. Install: `pip install tau-community-detection`. Tags: clustering. ## Ecosystem packages: Spatial - [AESTETIK](https://github.com/ratschlab/aestetik#readme): Convolutional autoencoder that learns spot representations from spatial transcriptomics by jointly integrating transcriptomics, morphology (H&E), and spatial-neighborhood topology. The learned embeddings support downstream tasks such as spatial-domain clustering and multi-modal analysis. Install: `pip install aestetik`. Tutorials: https://github.com/ratschlab/aestetik/tree/main/example. Tags: spatial transcriptomics, imaging, multimodal, dimensionality reduction, deep learning. - [bento-tools](https://bento-tools.readthedocs.io/): A Python toolkit for subcellular analysis of spatial transcriptomics data. Install: `pip install bento-tools`. Tutorials: https://bento-tools.readthedocs.io/page/tutorials.html. Tags: spatial transcriptomics, segmentation. - [cell2location](https://cell2location.readthedocs.io/): Cell2location is a Bayesian model that can resolve fine-grained cell types in spatial transcriptomic data and create comprehensive cellular maps of diverse tissues. Cell2location accounts for technical sources of variation and borrows statistical strength across locations, thereby enabling the integration of single-cell and spatial transcriptomics with higher sensitivity and resolution than existing tools. Install: `pip install cell2location`. Tags: spatial transcriptomics, cell-type annotation, deconvolution, probabilistic modeling. - [CellCharter](https://cellcharter.readthedocs.io/): CellCharter is a framework to identify, characterize and compare spatial domains from spatial omics and multi-omics data. Install: `pip install cellcharter`. Tags: spatial transcriptomics, clustering, probabilistic modeling. - [dvp-io](https://dvp-io.readthedocs.io): Read/write functions to and from spatialdata for Deep Visual Proteomics. Install: `pip install dvp-io`. Tutorials: https://dvp-io.readthedocs.io/page/tutorials.html. Tags: spatial proteomics, proteomics, file formats. - [flashdeconv](https://github.com/cafferychen777/flashdeconv#readme): FlashDeconv is a high-performance spatial transcriptomics deconvolution tool that enables cell type mapping at atlas scale. Using structure-preserving sketching via randomized numerical linear algebra, FlashDeconv achieves linear time and memory complexity, processing 1 million spots in approximately 3 minutes on a standard laptop without GPU. It provides accurate cell type proportion estimation with Pearson r = 0.944 on the Spotless benchmark, and preserves rare cell type detection through leverage-score weighted sampling. Install: `pip install flashdeconv`. Tutorials: https://github.com/cafferychen777/flashdeconv/tree/main/examples. Tags: spatial transcriptomics, cell-type annotation, deconvolution. - [grassp](https://public.czbiohub.org/comp.bio/grassp/): grassp (GRaph-based Analysis of Subcellular/Spatial Proteomics) is a Python module for fast, flexible, and scalable analysis of mass-spectrometry-based subcellular proteomics datasets. It uses the anndata format to store mass-spec data and results. scanpy is used for dimensionality reduction and visualization functions. Install: `pip install grassp`. Tutorials: https://public.czbiohub.org/comp.bio/grassp/tutorials/. Tags: spatial proteomics, proteomics. - [maxspin](https://maxspin.readthedocs.io/): An information theoretic approach to detecting spatially varying genes. Install: `pip install maxspin`. Tutorials: https://github.com/dcjones/maxspin/blob/main/tutorial.ipynb. Tags: spatially variable genes. - [nichepca](https://nichepca.readthedocs.io/): A Python package for PCA-based spatial domain identification in single-cell spatial transcriptomics data. Install: `pip install nichepca`. Tutorials: https://nichepca.readthedocs.io/page/notebooks/example.html. Tags: spatial transcriptomics, clustering. - [novae](https://prism-oncology.github.io/novae/): Graph-based foundation model for spatial transcriptomics data. Zero-shot spatial domain inference, batch-effect correction, and many other features. Install: `pip install novae`. Tags: spatial transcriptomics, deep learning. - [SC2Spa](https://sc2spa.readthedocs.io/): SC2Spa is a deep learning-based tool for predicting the spatial coordinates of single cells based on transcriptome. Two paired single cell and spatial transcriptomic datasets are required to run SC2Spa. SC2Spa is trained on a ST reference dataset to learn the relationship of gene expression and spatial coordinates. The trained fully-connected neural network can be used to predict the locations of a single cell with only the transcriptomic profile as input. The predicted locations of single cells can be further used to study the communication of the single cells. Install: `pip install SC2Spa`. Tags: scRNA-seq, spatial transcriptomics, cell-cell communication, deep learning. - [scviva-tools](https://scviva-tools.readthedocs.io/): scviva-tools is a consolidated spatial transcriptomics analysis toolkit built on scvi-tools, providing niche-aware representation learning (scVIVA), deconvolution (DestVI, Stereoscope), noise correction (ResolVI), imputation (GIMVI), and spatial mapping (Tangram) as first-class, interoperable models. Install: `pip install scviva-tools`. Tutorials: https://scviva-tools.readthedocs.io/page/tutorials/index.html. Tags: spatial transcriptomics, deconvolution, denoising, data integration, deep learning, probabilistic modeling. - [sopa](https://prism-oncology.github.io/sopa/): Technology-invariant pipeline for spatial-omics analysis that scales to millions of cells. It includes segmentation, annotation, spatial statistics, and efficient visualization. Install: `pip install sopa`. Tags: spatial transcriptomics, imaging, pipeline. - [spatial-eggplant](https://spatial-eggplant.readthedocs.io/): Python package designed to transfer information from multiple spatial-transcriptomics data sets to a single reference representing a Common Coordinate Framework (CCF). Install: `pip install spatial-eggplant`. Tags: spatial transcriptomics, data integration. - [spatialproteomics](https://sagar87.github.io/spatialproteomics): Spatialproteomics is an interoperable toolbox for analyzing highly multiplexed fluorescence image data. This analysis involves a sequence of steps, including segmentation, image processing, marker quantification, cell type classification, and neighborhood analysis. Install: `pip install spatialproteomics`. Tutorials: https://sagar87.github.io/spatialproteomics/notebooks/ExampleWorkflow.html. Tags: spatial transcriptomics, spatial proteomics, imaging, pipeline. - [spatiomic](https://spatiomic.org): spatiomic is a computational library for the analysis of spatial proteomics, mainly via pixel-based clustering, differential cluster abundance analysis and spatial statistics. Install: `pip install spatiomic`. Tutorials: https://spatiomic.org/latest/tutorials/full_example.html. Tags: spatial transcriptomics, spatial proteomics, imaging, segmentation. - [STMiner](https://stminerdoc.readthedocs.io/): Gene-centric spatial transcriptomics for deciphering complex spatial omics data. Install: `pip install stminer`. Tags: spatial transcriptomics, spatially variable genes, deep learning, optimal transport. - [tangram](https://tangram-sc.readthedocs.io/): Spatial alignment and gene expression mapping of single cell transcriptomic data. Install: `pip install tangram-sc`. Tutorials: https://tangram-sc.readthedocs.io/page/tutorials.html. Tags: spatial transcriptomics, deconvolution. - [vitessce](https://vitessce.github.io/vitessce-python/): Vitessce is an integrative visualization framework for multimodal and 2D/3D spatially resolved single-cell data. It consists of reusable, interactive linked views including scatterplot embedding views, 2D/3D spatial image views, genome browser tracks, statistical plots, and control views, built on web technologies such as WebGL and WebXR. Install: `pip install vitessce`. Tutorials: https://github.com/vitessce/vitessce/tree/main/examples. Tags: spatial transcriptomics, imaging, multimodal, visualization. ## Ecosystem packages: Data structures - [annbatch](https://annbatch.readthedocs.io/): A data loader and io utilities for mini-batched data loading of on-disk AnnData files as well as in-memory data, co-developed by Lamin Labs and scverse. Install: `pip install annbatch`. Tags: data structures, deep learning, GPU acceleration. - [anndata for R](https://anndata.dynverse.org) (R): ⚠️ DEPRECATED: This package is deprecated in favor of anndataR. Please use anndataR for new projects. A ‘reticulate’ wrapper for the Python package ‘anndata’. Provides a scalable way of keeping track of data and learned annotations. Used to read from and write to the h5ad file format. Install: `install.packages("anndata")`. Tags: data structures, interoperability. - [anndataR](https://bioconductor.org/packages/anndataR/) (R): An R implementation of the AnnData object including native reading and writing of H5AD files and conversion to common R data structures. Install: `BiocManager::install("anndataR")`. Tutorials: https://scverse.org/anndataR/. Tags: data structures, interoperability. - [annsel](https://annsel.readthedocs.io/): Annsel is a user-friendly library that brings familiar dataframe-style operations to AnnData objects such as selection, filtering and group by’s. Install: `pip install annsel`. Tutorials: https://annsel.readthedocs.io/page/notebooks/all_of_annsel.html. Tags: data structures. - [GRnnData](https://cantinilab.github.io/GRnnData/): An overload of anndata to more easily work with gene networks. Allows easy conversion between anndata and grnndata and provide loads of useful utilities functions. Install: `pip install grnndata`. Tags: scRNA-seq, gene regulatory networks, file formats. - [TreeData](https://treedata.readthedocs.io/): TreeData is a lightweight wrapper around AnnData which adds two additional attributes, obst and vart, to store nx.DiGraph trees for observations and variables. Install: `pip install treedata`. Tags: lineage tracing, data structures. - [wsidata](https://wsidata.readthedocs.io/): wsidata provides data structures and IO for whole slide image (WSI) analysis, built on SpatialData. A single WSIData object holds the multi-resolution slide, tissue and tile geometries, and derived features, so WSIs can be handled with the same tooling as other scverse data. Install: `pip install wsidata`. Tutorials: https://wsidata.readthedocs.io/page/intro/index.html. Tags: imaging, data structures, file formats, interoperability. - [zellkonverter](https://bioconductor.org/packages/zellkonverter/) (R): An Bioconductor R package that enables reading and writing of H5AD files and conversion between AnnData and SingleCellExperiment objects by wrapping the Python anndata package. Install: `BiocManager::install("zellkonverter")`. Tutorials: https://theislab.github.io/zellkonverter/. Tags: data structures, interoperability. ## Ecosystem packages: Multimodal - [ATLAS](https://atlas-smilies.readthedocs.io/): ATLAS is a framework for multi-omic trajectory inference from paired single-cell RNA and ATAC sequencing data. By integrating transcriptional and chromatin accessibility information within a unified representation, ATLAS enables pseudotime reconstruction and cell fate prediction that directly incorporate regulatory dynamics. Install: `pip install atlas-smilies`. Tags: multimodal, trajectory inference, pseudotime, scRNA-seq, ATAC-seq. - [dynamo-release](https://dynamo-release.readthedocs.io/): Inclusive model of expression dynamics with metabolic labeling based scRNA-seq / multiomics, vector field reconstruction, potential landscape mapping, differential geometry analyses, and most probably paths / in silico perturbation predictions. Install: `pip install dynamo-release`. Tags: multimodal, trajectory inference, RNA velocity. - [moscot](https://moscot.readthedocs.io/page/): moscot is a scalable toolbox for multiomics single-cell optimal transport applications. Install: `pip install moscot`. Tags: spatial transcriptomics, multimodal, trajectory inference, optimal transport. - [Mowgli](https://mowgli.readthedocs.io/): Paired single-cell multi-omics data integration with Optimal Transport-flavored Nonnegative Matrix Factorization. Install: `pip install mowgli`. Tags: multimodal, data integration, dimensionality reduction, optimal transport. - [omicverse](https://omicverse.readthedocs.io/): OmicVerse is the fundamental package for multi omics included bulk and single cell analysis with Python. The original name of the omicverse was Pyomic, but we wanted to address a whole universe of transcriptomics, so we changed the name to OmicVerse, it aimed to solve all task in RNA-seq. Install: `pip install omicverse`. Tags: bulk RNA-seq, multimodal. - [Panpipes](https://panpipes-pipelines.readthedocs.io/): A pipeline for multiomic single-cell and spatial transcriptomic data analysis. Install: `pip install panpipes`. Tutorials: https://panpipes-pipelines.readthedocs.io/page/tutorials/. Tags: spatial transcriptomics, multimodal, pipeline. - [PILOT](https://pilot.readthedocs.io/page/api.html): PILOT is a Python library for Detection of PatIent-Level distances from single cell genomics and pathomics data with Optimal Transport. Install: `pip install pilotpy`. Tutorials: https://pilot.readthedocs.io/. Tags: imaging, multimodal, trajectory inference, optimal transport. - [SCALEX](https://scalex.readthedocs.io/): SCALEX is an integration and projection tool for atlas-level single-cell RNA-seq and ATAC-seq data. Install: `pip install SCALEX`. Tags: scRNA-seq, ATAC-seq, data integration. ## Ecosystem packages: Epigenomics - [CellOracle](https://morris-lab.github.io/CellOracle.documentation/): A computational tool that integrates single-cell transcriptome and epigenome profiles to infer gene regulatory networks (GRNs), critical regulators of cell identity. Install: `pip install celloracle`. Tags: epigenomics, gene regulatory networks, perturbation. - [epiScanpy](https://episcanpy.readthedocs.io/): EpiScanpy is a toolkit to analyse single-cell open chromatin (scATAC-seq) and single-cell DNA methylation (for example scBS-seq) data. Install: `pip install episcanpy`. Tags: epigenomics. - [Multivelo](https://multivelo.readthedocs.io/page/api.html): A mechanistic model of gene expression that extends the popular RNA velocity framework by incorporating epigenomic data. Install: `pip install multivelo`. Tutorials: https://multivelo.readthedocs.io/page/MultiVelo_Demo.html. Tags: epigenomics, RNA velocity. - [PEAKQC](https://loosolab.pages.gwdg.de/software/peakqc/): periodicity evaluation in scATAC-seq data for quality assessment. Install: `pip install peakqc`. Tags: ATAC-seq, quality control. - [pychromVAR](https://pychromvar.readthedocs.io/): A python pacakge for chromVAR. Install: `pip install pychromvar`. Tags: ATAC-seq, gene regulatory networks. - [sincei](https://sincei.readthedocs.io/): sincei provides a flexible, easy-to-use command-line interface and python API to work with single-cell epigenomics data directly from BAM files. It can: Aggregate signal in bins, genes or any feature of interest from single-cells. Perform read-level and count-level quality control. Perform dimensionality reduction and clustering of various types of single-cell data (open chromatin, histone marks, methylation etc..). Create coverage files (bigwigs) for visualization. Install: `pip install sincei`. Tags: epigenomics, multimodal, preprocessing, quality control, clustering, visualization, file formats. ## Ecosystem packages: Infrastructure - [Marsilea](https://marsilea.readthedocs.io): Marsilea is a declarative visualization library for composing complex, multi-panel figures such as annotated heatmaps, oncoprints and UpSet plots, where every side plot stays aligned with the main canvas under shared grouping, splitting and dendrogram-based reordering. Install: `pip install marsilea`. Tutorials: https://marsilea.readthedocs.io/page/tutorial/index.html. Tags: visualization. - [pcdl](https://github.com/elmbeech/physicelldataloader/blob/master/README.md): physicell data output loader for downstream data analysis in python3. Install: `pip install pcdl`. Tutorials: https://github.com/elmbeech/physicelldataloader/blob/master/man/TUTORIAL_python3_scverse.md. Tags: file formats. - [scDataLoader](https://www.jkobject.com/scDataLoader/): A dataloader for large single cell databases like cellxgene. Does weighted random sampling, downloading and preprocessing. works with anndata, zarr, and h5ad files. Install: `pip install scdataloader`. Tags: scRNA-seq, preprocessing, deep learning, file formats. - [scmcp](https://docs.scmcphub.org): A MCP server hub for scRNA-Seq analysis software. Install: `pip install scmcp`. Tags: large language models. ## Ecosystem packages: bulk RNA-seq - [ncountr](https://ncountr.readthedocs.io/): ncountr is the first Python package for end-to-end Nanostring nCounter gene expression analysis. It provides RCC file parsing, quality control, normalization, differential expression testing, and gene set scoring. Results can be exported as AnnData objects for downstream analysis with scanpy and the broader scverse ecosystem. Install: `pip install ncountr`. Tutorials: https://ncountr.readthedocs.io/page/vignettes/. Tags: bulk RNA-seq, preprocessing, quality control, differential expression, functional analysis. - [PyDESeq2](https://pydeseq2.readthedocs.io/): PyDESeq2 is a python package for bulk RNA-seq differential expression analysis. It is a re-implementation from scratch of the main features of the R package DESeq2 (Love et al. 2014). Install: `pip install pydeseq2`. Tutorials: https://pydeseq2.readthedocs.io/page/auto_examples/. Tags: bulk RNA-seq, differential expression. - [pytximport](https://pytximport.readthedocs.io/): A Python port of the tximport R package for importing transcript-level quantification data from various RNA-seq quantification tools such as salmon and kallisto and summarizing it to the gene level. Install: `pip install pytximport`. Tags: bulk RNA-seq, differential expression, file formats. - [Rectangle](https://rectanglepy.readthedocs.io/): Rectangle is a python package for computational deconvolution. Rectangle presents a novel approach to second-generation deconvolution, characterized by hierarchical processing, an estimation of unknown cellular content and a significant reduction in data volume during signature matrix computation. Install: `pip install rectanglepy`. Tutorials: https://rectanglepy.readthedocs.io/notebooks/example.html. Tags: bulk RNA-seq, deconvolution. ## Ecosystem packages: Proteomics - [AlphaPeptTools](https://mannlabs.github.io/alphapepttools/index.html): AnnData-based downstream proteomics analysis package with comprehensive support of search engine report formats. AlphaPeptTools features an io module for loading and standardizing MS-proteomics data, as well as pp, pl, tl and metrics modules to facilitate common proteomics-specific data processing, visualization and analysis tasks with a focus on metrics for evaluating the effect of different processing steps. Additionally, it features several example notebooks to demonstrate different proteomics use cases. Install: `pip install alphapepttools`. Tutorials: https://github.com/MannLabs/alphapepttools/tree/main/docs/notebooks. Tags: proteomics, file formats. - [flowsom](https://flowsom.readthedocs.io/): The complete FlowSOM package known from R, now available in Python! Analyze high-dimensional cytometry data using FlowSOM, a clustering and visualization algorithm based on a self-organizing map (SOM). FlowSOM is used to distinguish cell populations from cytometry data in an unsupervised way and can help to gain deeper insights in fields such as immunology and oncology. Install: `conda install -c conda-forge flowsom`. Tutorials: https://flowsom.readthedocs.io/page/notebooks/example.html. Tags: flow cytometry, clustering. - [scyan](https://prism-oncology.github.io/scyan/): Biology-driven deep generative model for cell-type annotation in cytometry. Scyan is an interpretable model that also corrects batch-effect and can be used for debarcoding or population discovery. Install: `pip install scyan`. Tutorials: https://prism-oncology.github.io/scyan/tutorials/usage/. Tags: flow cytometry, data integration, cell-type annotation. ## Ecosystem packages: Adaptive immune cell receptor - [dandelion](https://sc-dandelion.readthedocs.io/): dandelion - A single cell BCR/TCR V(D)J-seq analysis package for 10X Chromium 5’ data. It streamlines the pre-processing, leveraging some tools from immcantation suite, and integrates with scanpy/anndata for single-cell BCR/TCR analysis. It also includes a couple of functions for visualization. Install: `pip install sc-dandelion`. Tags: immune receptor. - [scXpand](https://scxpand.readthedocs.io/): scXpand is a machine learning framework for pan-cancer detection of T-cell clonal expansion directly from single-cell RNA sequencing (scRNA-seq), without paired T-cell receptor (TCR) sequencing. Install: `pip install scxpand`. Tags: scRNA-seq, immune receptor, deep learning. ## Ecosystem packages: Imaging - [LazySlide](https://lazyslide.readthedocs.io/): LazySlide is a Python framework for whole slide image (WSI) analysis that integrates with the scverse ecosystem. It covers preprocessing, tissue and cell segmentation, feature extraction with pathology foundation models, and multimodal integration of histology with omics and text. Install: `pip install lazyslide`. Tutorials: https://lazyslide.readthedocs.io/page/tutorials/index.html. Tags: imaging, preprocessing, segmentation, deep learning, foundation model, multimodal, visualization. - [PathML](https://pathml.readthedocs.io/): An open-source toolkit for computational pathology and machine learning. Install: `pip install pathml`. Tags: imaging. ## Learn - [Tutorials](https://scverse.org/learn/): Getting-started tutorials for the core packages. - [Package index](https://scverse.org/packages/): All core and ecosystem packages with links to docs, source, and distribution. - [Package registry (JSON)](https://scverse.org/ecosystem-packages/packages.json): Machine-readable list of every core and ecosystem package, with docs, install names, tags and implementations in other languages. - [Single-cell best practices](https://www.sc-best-practices.org/): Community book on best practices for single-cell analysis. ## About - [Mission](https://scverse.org/about/mission/): What scverse is and why it exists. - [Roles and governance](https://scverse.org/about/roles/): Core team, steering council, and how the project is run. - [Code of conduct](https://scverse.org/about/code_of_conduct/): Community standards for participation. - [AI policy](https://scverse.org/about/ai_policy/): Expectations for contributing AI-assisted code to scverse projects. ## Community - [GitHub](https://github.com/scverse): Source code for all scverse packages. - [Discourse](https://discourse.scverse.org/): User forum for questions and discussion. - [Zulip](https://scverse.zulipchat.com/): Developer chat. - [Ecosystem packages](https://github.com/scverse/ecosystem-packages): Community packages built on scverse standards, and inclusion criteria. - [cookiecutter-scverse](https://cookiecutter-scverse-instance.readthedocs.io/en/latest/): Project template for creating new scverse-compatible packages. ## Optional - [Blog](https://scverse.org/blog/): Announcements and release notes. - [Events](https://scverse.org/events/): Conferences and hackathons. - [People](https://scverse.org/people/): Contributors and core team. - [YouTube](https://www.youtube.com/channel/UCpsvsIAW3R5OdftJKKuLNMA): Recorded talks and workshops.