SeuratWrappers is a collection of community-provided methods and extensions for Seurat, curated by the Satija Lab at the New York Genome Center (NYGC). These integrations provide functionality not yet available in core Seurat and can be updated independently and more frequently — allowing the community to rapidly incorporate newly published single-cell analysis methods without waiting for a Seurat release.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/satijalab/seurat-wrappers/llms.txt
Use this file to discover all available pages before exploring further.
Installation
Install SeuratWrappers and per-method dependencies.
GitHub
Browse source code, open issues, and contribute new methods.
Why SeuratWrappers exists
Seurat is a widely used framework for single-cell RNA sequencing (scRNA-seq) analysis. Its core package provides a stable, well-tested API for common operations: normalization, dimensionality reduction, clustering, and visualization. However, the single-cell field moves quickly. New methods for batch correction, trajectory inference, imputation, and spatial analysis are published continuously. SeuratWrappers bridges this gap by:- Extending Seurat with methods that are valuable but outside the scope of the core package
- Decoupling release cycles so individual wrappers can be updated independently of Seurat itself
- Centralizing community contributions into a single, discoverable package maintained under consistent conventions
How the wrappers work
Each wrapper follows a consistent pattern. Wrapper functions accept Seurat objects as their primary input, call the underlying method’s native API, and return results in a Seurat-compatible format — either modifying the Seurat object in place or returning a modified copy. For example, callingRunHarmony() on a Seurat object passes the PCA embeddings to the Harmony algorithm and stores the corrected embeddings back as a new dimensional reduction in the same object. You continue to use standard Seurat functions (FindNeighbors(), RunUMAP(), etc.) on the result.
cell_data_set), SeuratWrappers provides conversion functions like as.cell_data_set() and as.Seurat() to move between representations.
Method categories
SeuratWrappers organizes methods into five broad categories:Integration
Batch correction and multi-dataset integration methods that align cells from different samples, donors, or technologies.Trajectory analysis
Methods that infer developmental or dynamic relationships between cells and order them along pseudotime.| Method | Description |
|---|---|
| Monocle 3 | Principal graph-based trajectory inference and pseudotime |
| RNA Velocity | Transcriptional dynamics from spliced/unspliced RNA ratios |
| tricycle | Cell cycle position estimation |
Dimensionality reduction and imputation
Alternative methods for embedding cells in low-dimensional space and recovering signal from sparse count matrices.Spatial and visualization
Methods for spatially resolved transcriptomics and enhanced visualization of single-cell data.Quality control and utilities
Tools for filtering low-quality cells, importing data, running differential expression, and exporting results.| Method | Description |
|---|---|
| miQC | Probabilistic QC using mixture models |
| CoGAPS | Non-negative matrix factorization for pattern discovery |
| CIPR | Cell identity prediction using reference profiles |
| Presto | Fast Wilcoxon test for differential expression |
| alevin | Import salmon/alevin quantification into Seurat |
| Cell Browser | Export Seurat objects for UCSC Cell Browser |
Next steps
Installation
Install SeuratWrappers and the dependencies for each method you plan to use.
API reference
Browse the full function reference with parameters and return types.