Documentation • Quickstart • Benchmarks • Releases
RustQC is a suite of fast QC tools for sequencing data, compiled to a single static binary with no runtime dependencies.
Run time for a large paired-end RNA-seq BAM (~186M reads) on AWS.
It currently includes:
rustqc rnais a single-command RNA-Seq QC tool that runs all QC analyses in one pass. Designed to slot into the nf-core/rnaseq pipeline, but works anywhere:
| Tool | Reimplements | Description |
|---|---|---|
| dupRadar | dupRadar | PCR duplicate rate vs. expression analysis with density scatter plots |
| featureCounts | featureCounts | Gene-level read counting with biotype summaries |
| bam_stat | RSeQC bam_stat.py |
Basic alignment statistics |
| infer_experiment | RSeQC infer_experiment.py |
Library strandedness inference |
| read_duplication | RSeQC read_duplication.py |
Position- and sequence-based duplication histograms |
| read_distribution | RSeQC read_distribution.py |
Read distribution across genomic features |
| junction_annotation | RSeQC junction_annotation.py |
Splice junction classification |
| junction_saturation | RSeQC junction_saturation.py |
Splice junction saturation analysis |
| inner_distance | RSeQC inner_distance.py |
Paired-end inner distance distribution |
| TIN | RSeQC tin.py |
Transcript Integrity Number |
| preseq | preseq lc_extrap |
Library complexity extrapolation |
| Qualimap rnaseq | Qualimap rnaseq |
Gene body coverage, read origin, strand specificity |
| flagstat | samtools flagstat |
Alignment flag summary |
| idxstats | samtools idxstats |
Per-chromosome read counts |
| stats | samtools stats |
Full samtools stats output including all histogram sections |
All outputs are format- and numerically identical to the upstream tools, and compatible with MultiQC for reporting.
# Install (Linux x86_64 example -- see docs for all platforms)
curl -fsSL https://github.com/seqeralabs/RustQC/releases/latest/download/rustqc-linux-x86_64.tar.gz | tar xz --strip-components=1
sudo mv ./rustqc /usr/local/bin/
# Run RNA-Seq QC
rustqc rna sample.markdup.bam --gtf genes.gtf --paired --outdir results/# Or use Docker
docker run --rm -v "$PWD":/data ghcr.io/seqeralabs/rustqc:latest \
rustqc rna /data/sample.markdup.bam --gtf /data/genes.gtf --outdir /data/results# Or install from crates.io
cargo install rustqcSee the documentation for full usage details, configuration options, output file descriptions, and benchmark results.
RustQC was developed with substantial assistance from AI coding agents (primarily Claude), using the upstream tool source code as reference. Correctness is validated by comparing output against the original tools on real sequencing data, not by manual code review alone. See the AI & Provenance documentation for full details, including known validation gaps.
This project is licensed under the GNU General Public License v3.0 or later. See LICENSE for details.