sc-Epigenomics: ChIP

ChromSCapeRefRSingle-Cell Chromatin Landscape profiling, analysis of sparse single-cell chromatin profiling datasets in a Shiny App
Dr.seq2RefR, PythonQuality control and analysis pipeline for parallel single cell transcriptome and epigenome data (including scATAC-seq and Drop-ChIP data)
SCRATRefRSingle-Cell Regulome Analysis Tool (ATAC-seq, DNase-seq, ChIP-seq)

sc-Epigenomics: Chromatin accessibility

epiScanpy Ref Python Computational framework for the analysis of single-cell DNA methylation and single-cell ATAC-seq data
scipipeline Snakemake Pipeline for processing single-cell combinatorial indexing ATAC seq data
scOpen Ref Python Chromatin-accessibility estimation of single-cell ATAC data
APEC Ref Python Accessibility Pattern-based Epigenomic Clustering, single-cell chromatin accessibility analysis toolkit
BIRD Ref C++, R Big data Regression for predicting DNase I hypersensitivity, Software to predict chromatin accessibility based on gene expression data (scRNA-seq)
Brockman Ref R Brockman Representation Of Chromatin by K-mers in Mark-Associated Nucleotides,  tool for exploratory data analysis for highdimensional or single cell epigenomics
ChraccR R Tools for the comprehensive analysis of (single cell) chromatin accessibility data, methods for data quality control, exploratory analyses and the identification and characterization of differentially accessible regions
ChromA Ref Python Chromatin Landscape Annotation Tool, probabilistic model to annotate chromatin regions into accessible or inaccessible, open or closed, based on their ATACseq profile. ChromA can process bulk datasets, single-cell or integrate information from a combination of both
ChromVAR Ref R Analysis of sparse chromatin accessibility data from single cell or bulk ATAC or DNAse-seq data
Cicero Ref R Tools for analyzing single-cell chromatin accessibility experiments
cisTopic Ref R Simultaneously identify cell states and cis-regulatory topics from single cell epigenomics data
DC3 Ref Python De-Convolution and Coupled-Clustering, method for the joint analysis of various bulk and single-cell data such as HiChIP, RNA-seq and ATAC-seq from the same heterogeneous cell population
Destin Ref R Toolkit for single-cell analysis of chromatin accessibility, scATAC-seq processing and cell clustering pipeline
Dr.seq2 Ref R, Python Quality control and analysis pipeline for parallel single cell transcriptome and epigenome data (including scATAC-seq and Drop-ChIP data)
epiConv Ref R Algorithm to cluster scATAC-seq data and detect differentially accessible peaks,  epiConv learns the similarities (or distances) between single cells from their raw Tn5 insertion profiles by a convolution-based approach
MAESTRO Ref Snakemake Model-based AnalysEs of Transcriptome and RegulOme, a comprehensive open-source computational workflow for the integrative analyses of scRNA-seq and scATAC-seq data from multiple platforms
scABC Ref R Unsupervised clustering and analysis of scATAC-seq data
SCALE Ref Python Single-cell ATAC-seq analysis via Latent feature Extraction
Scasat Ref Jupyter Notebook Single cell ATAC-seq preprocessing and analysis pipeline
scATAC-pro Ref Perl Comprehensive tool for processing, analyzing and visualizing single cell chromatin accessibility sequencing data
SCATE Ref R Single-cell ATAC-seq Signal Extraction and Enhancement, adaptively integrates information from co-activated cis regulatory regions, similar cells, and publicly available regulome data
scBFA Ref R Modeling detection patterns to mitigate technical noise in large-scale single cell genomics data (scRNA-seq and scATAC-seq)
SCRAT Ref R Single-Cell Regulome Analysis Tool (ATAC-seq, DNase-seq, ChIP-seq)
Signac R Signac is an extension of Seurat for the analysis, interpretation, and exploration of single-cell chromatin datasets
SnapATAC Ref R, Python Single Nucleus Analysis Pipeline for ATAC-seq
SOMatic Ref C++, R Novel approach using self-organizing maps (SOM) to link scATAC-seq regions with scRNA-seq genes
STREAM Ref Jupyter Notebook Single-cell Trajectories Reconstruction, Exploration And Mapping, interactive pipeline capable of disentangling and visualizing complex branching trajectories from both single-cell transcriptomic and epigenomic data
TimeReg Ref Matlab Time course regulatory analysis from paired gene expression and chromatin accessibility time course data

sc-Epigenomics: HiC

scHiCExplorer Ref Python Single cell Hi-C data analysis toolbox, set of programs to process, normalize, analyse and visualize single-cell Hi-C data
Scool Ref Python New data storage format for single-cell Hi-C data
Bhmem Ref Java A mapping tool for Methyl-HiC and single-cell Methyl-HiC based on bwa
GiniQC Ref Python Tool for single-cell Hi-C quality control which quantifies unevenness in the distribution of inter-chromosomal reads in the scHi-C contact matrix to measure the level of noise
hickit Ref C TAD calling, phase imputation, 3D modeling and more for diploid single-cell Hi-C (Dip-C) and general Hi-C
NucProcess Ref Python Chromatin contact paired-read single-cell Hi-C processing module for Nuc3D and NucTools
scHiCluster Ref Python single-cell clustering algorithm for Hi-C contact matrices that is based on imputations using linear convolution and random walk
scHiCTools Ref Python Computational toolbox for analyzing single cell Hi-C data

sc-Epigenomics: DNA methylation

BEATRefRBS-Seq Epimutation Analysis Toolkit, model-based analysis of single-cell methylation data
DeepCpGRefPythonAccurate prediction of single-cell DNA methylation states using deep learning
epiScanpyRefPythonComputational framework for the analysis of single-cell DNA methylation and single-cell ATAC-seq data
BPRMethRefRpackage that quantifies methylation profiles by generalized linear model regression – supports single cell methylation data, using a Bernoulli likelihood
csmFinderRefRPackage for identifying putative cell-subset specific DNA methylation (pCSM) loci from single-cell or bulk methylomes
EpiclomalRefPythonProbabilistic clustering of sparse single-cell DNA methylation data
EpiSCOREREpigenetic cell-type deconvolution from Single-Cell Omic Reference profiles, exploits the tissue-specific single-cell RNA-Sequencing atlases to construct corresponding tissue-specific DNA methylation references.
MelissaRefRMEthyLation Inference for Single cell Analysis, bayesian blustering and imputation of single cell methylomes
PDclustRefRAnalytical strategy to define single-cell DNA methylation states through pairwise comparisons of single-CpG methylation measurements

sc-Transcriptomics

cardelinoRefRIntegrating whole exomes and single-cell transcriptomes to reveal phenotypic impact of somatic variants
ADImpute Ref R Prediction of unmeasured gene expression values from single cell RNA-sequencing data (dropout imputation), R-package combines multiple dropout imputation methods
CSS Ref R Cluster Cimilarity Spectrum, unsupervised reference-free (scRNA-seq) data representation, integration of single-cell genomics data e.g. across experimental conditions and individuals
COMUNET Ref R COmmunication exploration with MUltiplex NETworks, tool to explore and visualize intercellular communication (e.g. in in single-cell transcriptomic datasets)
cyclone Ref R Computational assignment of cell-cycle stage from single-cell transcriptome data
DCA Ref Python Deep Count Autoencoder, denoising of scRNA-seq datasets
destiny Ref R Diffusion maps for high-dimensional single-cell analysis of differentiation data
DistMap Ref R Spatial mapping of single cell RNA sequencing data by using an existing reference database of in situs
FateID Ref R Algorithm for the inference of cell fate bias in multipotent progenitors from singe-cell RNA-seq data
kBET Ref R k-nearest neighbour Batch Effect Test, R package to test for batch effects in high-dimensional single-cell RNA sequencing data
MCA Ref R Multiresolution Correlation Analysis, a graphical tool for subpopulation identification in single-cell gene expression data
MERLoT Ref R MEthod for Reconstructing Lineage tree Topologies using scRNA-seq data
netSmooth Ref R R/Bioconductor package for network smoothing of single cell RNA sequencing data
novoSpaRc Ref Python de novo Spatial Reconstruction of Single-Cell Gene Expression
PAGA Ref Jupyter Notebook Graph abstraction reconciles clustering with trajectory inference through a topology preserving map of single cells (available within Scanpy)
PiGx scRNAseq Ref snakemake Pipeline for analysis of Dropseq single cell RNA-seq data
powsimR Ref R Power analysis for bulk and single cell RNA-seq experiments
RaceID3 Ref R Algorithm for rare cell type identification from single-cell RNA-seq data
Scanpy Ref Python Single-Cell Analysis in Python, scalable toolkit for analyzing single-cell gene expression data including preprocessing, visualization, clustering, pseudotime and trajectory inference and differential expression testing
scCODA Ref Jupyter Notebook Single-cell differential composition analysis, allows for identification of compositional changes in high-throughput sequencing count data, especially cell compositions from scRNA-seq
scGen Ref Python Generative model to predict single-cell perturbation response across cell types, studies and species
sc-LVM Ref R, Python Modelling framework for single-cell RNA-seq data
SCRAT Ref R Single Cell R Analysis Toolkit
scVELO Ref Python Scalable toolkit for RNA velocity analysis in single cells, RNA velocity generalized through dynamical modeling
slalom Ref R, Python Scalable modelling framework for single-cell RNA-seq data that uses gene set annotations to dissect single-cell transcriptome heterogeneity
StemID2 Ref R Algorithm for the inference of differentiation trajectories and the stem cell identity from single-cell RNA-seq data
stochprofML R Tool to infer single-cell regulatory states from expression measurements taken from small groups of cells (averaging-and-deconvolution approach)
Vireo Ref Python Variational Inference for Reconstructing Ensemble Origins, Bayesian demultiplexing of pooled single-cell RNA-seq data without genotype reference
zUMIs Ref R Fast and flexible pipeline to process (single-cell) RNA sequencing data with UMIs

Selection of popular software:

BackSPINRefPythonBiclustering algorithm developed taking into account intrinsic features of single-cell RNA-seq experiments
CellityRefRClassification of low quality cells in scRNA-seq data using R
CellRangerR, PythonSet of analysis pipelines that process Chromium single cell 3’ RNA-seq output to align reads, generate gene-cell matrices and perform clustering and gene expression analysis
CIDRRefRClustering through Imputation and Dimensionality Reduction, ultrafast algorithm which uses a novel yet very simple ‘implicit imputation’ approach to alleviate the impact of dropouts in scRNA-Seq data in a principled manner
inferCNVRefRInfer Copy Number Variation using single-cell RNA-seq expression data
MAGICRefR, PythonMarkov Affinity-based Graph Imputation of Cells
MASTRefRModel-based Analysis of Single-cell Transcriptomics, fits a two-part, generalized linear models that are specially adapted for bimodal and/or zero-inflated single cell gene expression data
MIMOSCARefPythonMultiple Input Multiple Output Single Cell Analysis
MonocleRefRDifferential expression and time-series analysis for single-cell RNA-seq
SC3RefRInteractive tool for the unsupervised clustering of cells from single cell RNA-seq experiments
SCDERefRDifferential expression using error models and overdispersion-based identification of important gene sets
SCENICRefR, PythonTool to infer gene regulatory networks and cell types from single-cell RNA-seq data
scImputeRefRAccurate and robust imputation of scRNA-seq data
scranRefRPackage that implements a variety of low-level analyses of single-cell RNA-seq data (methods for normalization of cell-specific biases, pool-based norms to estimate size factors, assignment of cell cycle phase, and detection of highly variable and significantly correlated genes)
SCUBARefRSingle-cell Clustering Using Bifurcation Analysis, computational method for extracting lineage relationships from single-cell gene expression data, and modeling the dynamic changes associated with cell differentiation
SeuratRefREasy-to-use implementations of commonly used analytical techniques, including the identification of highly variable genes, dimensionality reduction (PCA, ICA, t-SNE), standard unsupervised clustering algorithms (density clustering, hierarchical clustering, k-means), and the discovery of differentially expressed genes and markers
SIMLRRefR, PythonSingle-cell Interpretation via Multi-kernel LeaRning which learns an appropriate distance metric from the data for dimension reduction, clustering and visualization
SPADERefRVisualization and cellular hierarchy inference of single-cell data
SplatterRefRSimple simulation of single-cell RNA sequencing data
TraCeRRefPythonReconstruction of T cell receptor sequences from single-cell RNA-seq data
TSCANRefRPseudo-time reconstruction and evaluation in single-cell RNA-seq analysis
velocytoRefR, PythonEstimating RNA velocity in single cell RNA sequencing datasets
WishboneRefJupyter NotebookWishbone is an algorithm to align single cells along developmental trajectories with branches
ZIFARefPythonZero-inflated dimensionality reduction algorithm for single-cell data

sc-Multi-assay data integration

epiScanpy Ref Python Computational framework for the analysis of single-cell DNA methylation and single-cell ATAC-seq data
MOFA+ Ref R/Python Statistical framework for comprehensive integration of multi-modal single-cell data
bindSC Ref R Bi-order INtegration of multi-omics Data from Single Cell sequencing technologies
clonealign Ref R Bayesian inference of clone-specific gene expression estimates by integrating single-cell RNA-seq and single-cell DNA-seq data
Coupled NMF Ref Python Integrative analysis of single cell genomics data by coupled nonnegative matrix factorizations
DC3 Ref Python De-Convolution and Coupled-Clustering, method for the joint analysis of various bulk and single-cell data such as HiChIP, RNA-seq and ATAC-seq from the same heterogeneous cell population. DC3 can simultaneously identify distinct subpopulations, assign single cells to the subpopulations (i.e., clustering) and de-convolve the bulk data into subpopulation-specific data.
LIGER Ref R Package for integrating and analyzing multiple single-cell datasets (e.g., scRNAseq and spatial transcriptomics data, scMethylation, or scATAC-seq), relying on integrative non-negative matrix factorization to identify shared and dataset-specific factors
MATCHER Ref Python Manifold Alignment to CHaracterize Experimental Relationships, approach for integrating multiple types of single cell measurements
scAI Ref R single-cell aggregation and integration (scAI) approach to integrate transcriptomic and epigenomic profiles (i.e., chromatin accessibility or DNA methylation) that are derived from the same cells, taking into consideration the extremely sparse and near-binary nature of single-cell epigenomic data
SCIM Ref Jupyter Notebook Single-Cell data Integration via Matching, a method to match cells across different single-cell ’omics technologies
Signac R Signac is an extension of Seurat for the analysis, interpretation, and exploration of single-cell chromatin datasets
SingleCellFusion Ref Jupyter Notebook Tool to integrate single-cell transcriptome and epigenome data
UnionCom Ref Python Unsupervised topological alignment of single-cell multi-omics integration

Other single cell software

BaSiC Ref Tool for background and shading correction of optical microscopy images, improves continuous single-cell quantification through correction of temporal drift in time-lapse microscopy data
DeepFlow Ref Python Data analysis workflow for imaging flow cytometry that combines deep convolutional neural networks with non-linear dimension reduction
SpatialDE Ref Jupyter Notebook Method to identify genes which significantly depend on spatial coordinates in non-linear and non-parametric ways (spatially resolved RNA-sequencing from e.g. spatial transcriptomics, in situ gene expression measurements from e.g. SeqFISH or MERFISH)
tTt and qTfy Ref Enabling single- cell tracking and quantification of cellular and molecular properties in time-lapse imaging data

External lists of single cell tools

Awesome single cellList of software packages and data resources for single-cell, including RNA-seq, ATAC-seq, etc.
omicXPlatform that provides real-time access to the pathways used by life science practitioners in their published works, includes
scRNA toolsTable of tools for the analysis of single-cell RNA-seq data
scRNA-seq notesList of scRNA-seq analysis tools