Skip to main content

MPUSP/snakemake-simple-mapping

A Snakemake workflow for the mapping of reads to reference genomes, minimalistic and simple.

Overview

Testing: GitHub Actions Workflow Status GitHub Actions Workflow Status

Last update: 2026-03-30

Latest release: v1.6.1

Topics: bowtie2 bwa-mem2 genomics mapping next-generation-sequencing snakemake snakemake-workflow star-alignment variant-calling

Authors: @m-jahn

Configuration

The following configuration details are extracted from the config's README file.


Workflow overview

This workflow is a best-practice workflow for mapping of reads to reference genomes, minimalistic and simple.

It will attempt to map reads to the reference using one of the included mappers, report read and experiment statistics, create coverage profiles, quantify variants (such as SNPs) using two different tools, and predict the effect of these variants. All of this is performed with minimal input and without lookups to external databases (e.g. for variant effects), which makes the workflow ideal for bacteria and other low-complexity non-model organisms.

The workflow is built using snakemake and consists of the following steps:

  1. Download genome reference from NCBI (ncbi tools), or use manual input (fasta, gff format)
  2. Check quality of input read data (FastQC)
  3. Trim adapters and apply quality filtering (fastp)
  4. Map reads to reference genome using:
    1. (Bowtie2)[http://bowtie-bio.sourceforge.net/bowtie2/manual.shtml] or
    2. (BWA-MEM2)[https://github.com/bwa-mem2/bwa-mem2] or
    3. (STAR)[https://github.com/alexdobin/STAR]
    4. (minimap2)[https://github.com/lh3/minimap2]
  5. Determine experiment type, get mapping stats (rseqc)
  6. Generate bigwig or bedgaph coverage profiles (deeptools)
  7. Quantify variations and SNPs (bcftools, freebayes)
  8. Predict effect of variants such as premature stop codons (VEP or SnpEff)
  9. Create consensus of variants and create a visual report (R markdown)
  10. Collect statistics from tool output (MultiQC)

Running the workflow

Input data

The workflow requires sequencing data in *.fastq.gz format, and a reference genome to map to. The sample sheet listing read input files needs to have the following layout:

sampledescriptionread1read2
sample1strain XYsample1_R1.fastq.gzsample1_R2.fastq.gz
............