Skip to content

Quick start

This walks through the minimum needed to run rustar-aligner end-to-end. If you already use STAR, the commands will look familiar — they are.

You need to do this once per reference genome.

Terminal window
rustar-aligner --runMode genomeGenerate \
--genomeDir /path/to/genome_index \
--genomeFastaFiles /path/to/genome.fa

For a human genome you’ll typically also pass a GTF file and tune the SA index parameter:

Terminal window
rustar-aligner --runMode genomeGenerate \
--runThreadN 16 \
--genomeDir /path/to/genome_index \
--genomeFastaFiles /path/to/GRCh38.fa \
--sjdbGTFfile /path/to/gencode.gtf \
--sjdbOverhang 100

See the genome index guide for the full set of relevant parameters.

Terminal window
rustar-aligner \
--genomeDir /path/to/genome_index \
--readFilesIn reads.fq \
--outSAMtype SAM \
--outSAMstrandField intronMotif \
--outFileNamePrefix sample_

This writes sample_Aligned.out.sam plus sample_Log.final.out, sample_SJ.out.tab, and other STAR-style output files into the current directory. Override the destination with --outFileNamePrefix /path/to/sample_.

Pass two files to --readFilesIn:

Terminal window
rustar-aligner \
--genomeDir /path/to/genome_index \
--readFilesIn reads_1.fq reads_2.fq \
--outSAMtype SAM \
--outFileNamePrefix sample_
Terminal window
rustar-aligner \
--genomeDir /path/to/genome_index \
--readFilesIn reads.fq \
--outSAMtype BAM SortedByCoordinate \
--outFileNamePrefix sample_

The output is sample_Aligned.sortedByCoord.out.bam. Pass BAM Unsorted instead for an unsorted BAM.

Use --readFilesCommand zcat to decompress on the fly:

Terminal window
rustar-aligner \
--genomeDir /path/to/genome_index \
--readFilesIn reads_1.fq.gz reads_2.fq.gz \
--readFilesCommand zcat \
--outSAMtype BAM SortedByCoordinate \
--outFileNamePrefix sample_

After a successful run you get the standard STAR file set:

FileContents
*_Aligned.out.sam / *_Aligned.sortedByCoord.out.bamThe alignments
*_Log.final.outSummary statistics (MultiQC-compatible)
*_Log.outVerbose run log
*_Log.progress.outPer-chunk progress
*_SJ.out.tabSplice junctions discovered during alignment

See the output files reference for a full breakdown of each file.