List of software packages for Nanopore sequencing data analysis, including basecalling, DNA/RNA modifications, etc. Contributions welcome...
- Dorado - [C++] - Production basecaller from 2022, successor to Guppy.
- Nanocall - [C++] - Nanocall: an open source basecaller for Oxford Nanopore sequencing data
- PoreSeq - [C++] - De novo sequencing and variant calling with nanopores using PoreSeq
- Nanonet - [C++] - Nanonet - Development version of RNN basecaller
- DeepNano - [Python] - DeepNano: Deep recurrent neural networks for base calling in MinION nanopore reads
- BasecRAWller - [Close sourced (May request code by emailing IPO@lbl.gov)] - BasecRAWller: Streaming Nanopore Basecalling Directly from Raw Signal
- Chiron - [Python] - Chiron: translating nanopore raw signal directly into nucleotide sequence using deep learning
- Causalcall - [Python] - Causalcall: Nanopore Basecalling Using a Temporal Convolutional Network
- Bonito - [Python] - A PyTorch Basecaller for Oxford Nanopore Reads (research, not production basecaller)
- Readfish - [Python] - Readfish enables targeted nanopore sequencing of gigabase-sized genomes
- UNCALLED - [C++] - Targeted nanopore sequencing by real-time mapping of raw electrical signal with UNCALLED
- SquiggleNet - [Python] - Real-Time, Direct Classification of Nanopore Signals with SquiggleNet
- Sigmap - [C/C++] - Real-time mapping of nanopore raw signals
- cwDTW - [C/C++] - An accurate and rapid continuous wavelet dynamic time warping algorithm for end-to-end mapping in ultra-long nanopore sequencing
- OpenDBA - [C++/CUDA] - GPU-accelerated Dynamic Time Warp (DTW) Barycenter Averaging
- Magenta & Maxwell - [C++/CUDA] - Fast signal-level matching for direct RNA nanopore sequencing
- tombo resquiggle - [Python] - Re-squiggle Algorithm.
- nanopolish eventalign - [C++] - Detecting DNA cytosine methylation using nanopore sequencing.
- f5c eventalign - [C/C++/CUDA] - GPU accelerated adaptive banded event alignment for rapid comparative nanopore signal analysis
- SquiggleKit Segmenter/MotifSeq - [Python] - SquiggleKit: a toolkit for manipulating nanopore signal data
- modkit - [Rust] - Extract modified base calls from dorado BAM output to bedMethyl format, also calculate DMRs
- Megalodon - [C++] - Research modified base caller which uses rerio, remora and a genome (deprecated by ONT 2023 for Dorado).
- modbam2bed - [C++] - Convert modified base calls from megalodon etc to bedMethyl format (deprecated by ONT 2023 for Modkit)
- nanopolish call-methylation - [C++] - Detecting DNA cytosine methylation using nanopore sequencing.
- f5c call-methylation - [C/C++/CUDA] - GPU accelerated adaptive banded event alignment for rapid comparative nanopore signal analysis
- nanoNOMe - [Python] - Simultaneous profiling of chromatin accessibility and methylation on human cell lines with nanopore sequencing.
- signalAlign - [C] - Mapping DNA methylation with high-throughput nanopore sequencing.
- mCaller - [Python] - Single-molecule sequencing detection of N6-methyladenine in microbial reference materials.
- DeepSignals - [Python] - DeepSignal: detecting DNA methylation state from Nanopore sequencing reads using deep-learning.
- tombo detect_modifications - [Python] - (previously nanoraw)De novo Identification of DNA Modifications Enabled by Genome-Guided Nanopore Signal Processing.
- NanoMod - [Python] - NanoMod: a computational tool to detect DNA modifications using Nanopore long-read sequencing data.
- tombo detect_modifications - [Python] - Modified Base Detection.
- MINES - [Python] - Direct RNA sequencing enables m6A detection in endogenous transcript isoforms at base specific resolution.
- EpiNano - [Python] - Accurate detection of m6A RNA modifications in native RNA sequences.
- Nanom6A - [Python] - Quantitative profiling of N6-methyladenosine at single-base resolution in stem-differentiating xylem of Populus trichocarpa using Nanopore direct RNA sequencing.
- m6anet - [Python] - Detection of m6A from direct RNA sequencing using a multiple instance learning framework.
- nano-ID - [R] - Native molecule sequencing by nano-ID reveals synthesis and stability of RNA isoforms.
- nanoRMS - [Python] - Quantitative profiling of pseudouridylation dynamics in native RNAs with nanopore sequencing.
- Yanocomp - [Python] - Yanocomp: robust prediction of m6A modifications in individual nanopore direct RNA reads.
- DiffErr - [Python] - A tool for detecting modifications from Nanopore DRS errors using a low modification control.
- ELIGOS - [Python] - Decoding the epitranscriptional landscape from native RNA sequences.
- nanoDoc - [Python] - nanoDoc: RNA modification detection using Nanopore raw reads with Deep One-Class Classification.
- nanocompore - [Python] - RNA modifications detection by comparative Nanopore direct RNA sequencing.
- DRUMMER - [Python] - Direct RNA sequencing reveals m6A modifications on adenovirus RNA are necessary for efficient splicing.
- xPore - [Python] - Identification of differential RNA modifications from nanopore direct RNA sequencing with xPore.
- Magnipore - [Python] - Magnipore: Prediction of differential single nucleotide changes in the Oxford Nanopore Technologies sequencing signal of SARS-CoV-2 samples
- DENA - [Python/R] - DENA: training an authentic neural network model using Nanopore sequencing data of Arabidopsis transcripts for detection and quantification of N6-methyladenosine on RNA
- mAFiA - [Python] - Detecting m6A at single-molecular resolution via direct RNA sequencing and realistic training data
- Penguin - [Python] - Penguin: A Tool for Predicting Pseudouridine Sites in Direct RNA Nanopore Sequencing Data
- nanoSHAPE - [Python] - Direct detection of RNA modifications and structure using single molecule nanopore sequencing.
- PORE-cupine - [R] - Determination of isoform-specific RNA structure with nanopore long reads.
- nanopolish polya - [C++] - Nanopore native RNA sequencing of a human poly(A) transcriptome.
- tailfindr - [R] - tailfindr: Alignment-free poly(A) length measurement for Oxford Nanopore RNA and DNA sequencing.
- RNAbloom2 - [Java] - Reference-free assembly of long-read transcriptome sequencing data with RNA-Bloom2
- RATTLE - [C++] - RATTLE: reference-free reconstruction and quantification of transcriptomes from Nanopore sequencing
- bambu - [R] - Context-Aware Transcript Quantification from Long Read RNA-Seq data with Bambu
- NanoSplicer - [Python] - Identification of splice junctions from nanopore sequencing using raw signal squiggles
- TALON - [Python] - Python package for identifying and quantifying known and novel genes/isoforms in long-read transcriptome data sets Run before TranscriptClean
- trackcluster -[Python] - trackcluster is an isoform calling and quantification pipeline for long RNA/cDNA reads
- FLAIR - [Python] - Full-Length Alternative Isoform analysis of RNA
- slow5lib - [C] - Fast nanopore sequencing data analysis with SLOW5
- pyslow5 - [Python] - pyslow5 python library
- slow5tools - [C/C++] - Toolkit for converting (FAST5 <-> SLOW5), compressing, viewing, indexing and manipulating data in SLOW5 format
- SquiggleKit SquigglePlot - [Python] - SquiggleKit: a toolkit for manipulating nanopore signal data
- Flye - [C++] - Single molecule sequence assembler with good polishing capabilities
- Shasta - [C] - Very fast and capable nanopore assembler
- MOP2 - [Nextflow] - MasterOfPores: A Workflow for the Analysis of Oxford Nanopore Direct RNA Sequencing Datasets
- nf-core/nanoseq - [Nextflow] - A systematic benchmark of Nanopore long read RNA sequencing for transcript level analysis in human cell lines
- nf-Wochenende - [Nextflow, Python] - Wochenende - modular and flexible alignment-based shotgun metagenome analysis
- NanoSim - [Python] - NanoSim: nanopore sequence read simulator based on statistical characterization., Trans-NanoSim characterizes and simulates nanopore RNA-sequencing data., Characterization and simulation of metagenomic nanopore sequencing data with Meta-NanoSim.
We welcome contributions and suggestions! Please follow the steps below to contribute:
- Fork this repository
- Make a change to README.md in this format:
[RESOURCE](LINK)
- [language(s)] - DESCRIPTION - Submit a pull request.
Wan, Y.K., Hendra, C., Pratanwanich, P.N. & Göke, J. Beyond sequencing: machine learning algorithms extract biology hidden in Nanopore signal data. Trends in Genetics (2021). https://doi.org/10.1016/j.tig.2021.09.001.
According to the official awesome Github repository, an awesome list on GitHub is "a curation of actual awesome stuff", so an awesome list only includes items that has been researched by a contributor who would personally recommend the items. To learn more, please read the official awesome manifesto.
This repository was created by Yuk Kei Wan.