Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VariantFlow

End-to-end WGS analysis pipeline using Nextflow DSL2 and GATK best practices. Performs QC, alignment, variant calling, filtering, annotation, and downstream analysis. Designed for reproducible, scalable genomics workflows on HPC and cloud environments with publication-ready outputs.

Pipeline Summary

  1. FASTQC - Raw read quality control.
  2. ALIGN - Read alignment to reference genome using BWA.
  3. BAM_PROCESS - Sorting, marking duplicates, and indexing using Samtools and GATK.
  4. VARIANT_CALLING - Per-sample variant calling using GATK HaplotypeCaller (GVCF mode).
  5. JOINT_GENOTYPING - Cohort-level joint genotyping using GATK CombineGVCFs and GenotypeGVCFs.
  6. ANNOTATION - Variant annotation using Ensembl VEP.

Requirements

To run this pipeline, you will need:

  1. Nextflow (>= 22.04)
  2. Conda (Miniconda or Anaconda) - Nextflow will automatically build the required environment using the provided environment.yml.

Quick Start (Test Run)

This pipeline includes a built-in test profile with tiny dummy files to verify the pipeline works on your machine.

1. Clone the repository

git clone https://github.com/Mkddb/VariantFlow.git
cd VariantFlow

2. Run a Stub Test (Fast - No tools required)

This tests the Nextflow logic and file-flow without running heavy bioinformatics tools or requiring large VEP caches.

nextflow run main.nf -profile test -stub-run

3. Run the Full Test (Requires Conda)

This runs the actual bioinformatics tools (GATK, Samtools, VEP, etc.) on the tiny test data. Nextflow will automatically create a Conda environment for you, which may take a few minutes the first time.

nextflow run main.nf -profile test -resume

Running on Real Data

To run the pipeline on your own data, you can override the default parameters via the command line.

nextflow run main.nf \
   -profile standard \
   --reads "/path/to/your/data/*_{1,2}.fastq.gz" \
   --genome "/path/to/your/reference.fa" \
   --outdir "my_results" \
   --vep_cache "/path/to/your/vep_cache"

Core Parameters

Parameter Description Default
--reads Path to paired-end FASTQ files (glob pattern) data/test/*_{1,2}.fastq.gz
--genome Path to the reference genome FASTA file assets/reference.fa
--outdir Directory where results will be saved results
--vep_cache Path to the Ensembl VEP cache directory ${projectDir}/vep_cache
--interval Interval (BED) file for targeted regions (opt) null

Directory Structure

VariantFlow/
├── main.nf              # Main workflow script
├── nextflow.config      # Pipeline configuration (profiles, resources)
├── environment.yml      # Conda environment recipe
├── assets/              # Reference genomes and indices
├── bin/                 # Custom helper scripts (e.g., summary.py)
├── data/                # Test data
├── modules/             # Nextflow DSL2 process modules
└── expected/            # Expected output for testing

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

End-to-end WGS analysis pipeline using Nextflow DSL2 and GATK best practices. Performs QC, trimming, alignment, variant calling, filtering, annotation, and downstream analysis. Designed for reproducible, scalable genomics workflows on HPC and cloud environments with publication-ready outputs.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages