UPHL-BioNGS/walkercreek is named after Walker Creek in central Utah near Sunset Peak and Sunset Canyon, an area associated with Chief Walkara (Chief Walker), a revered leader of the Utah Timpanogos and Sanpete Band of the Shoshone.
The pipeline is built using Nextflow, and follows the nf-core template. It runs in portable, reproducible environments using Docker/Singularity, with one container per process to simplify installation and dependency management.
Walkercreek is a best-practice bioinformatics pipeline for viral assembly, classification, and clade assignment, supporting Illumina and Nanopore influenza data. It also supports RSV using the IRMA “FLU” and “RSV” modules.
IRMA performs adaptive viral assembly using an on-the-fly reference refinement approach, designed for rapidly evolving viruses where fixed reference-based methods can be limiting. It was developed by Samuel S. Shepard in collaboration with the CDC's Influenza Division Bioinformatics Team. To gain insights into the innovative algorithm powering IRMA, refer to the IRMA manuscript.
Walkercreek supports five analysis platforms tailored to sequencing technology, sample type, and viral target.
Purpose: Illumina-based influenza analysis for clinical samples.
- See usage for instructions on how to create the samplesheet.csv input.
Command:
nextflow run main.nf -profile <docker/singularity> --platform flu_illumina --input '[path to samplesheet file: samplesheet.csv]' --outdir <OUTDIR>-SRA_FASTQ_SRATOOLS (optional): Downloads SRA data into FASTQ format IF a list of SRA ids is provided as input sequences.
--add_sra_file '[path to samplesheet file: assets/sra_small.csv]'-
Optional SRA retrieval
- Prefetch and FASTQ conversion (SRATools)
-
Read preprocessing & QC
- Lane merge
- Optional human read removal
- Read pairing, trimming, adapter/primer removal
- FastQC + MultiQC
- Optional Kraken2 classification
-
Assembly & typing
- IRMA (FLU module)
- Consensus QC
- Segment-level metrics (coverage, mapped reads, depth)
- Influenza A subtype / Influenza B lineage (Abricate, InsaFlu DB)
- Deterministic Nextclade dataset selection
-
Variant annotation
- SnpEff build and annotation
- Variant summary extraction
-
Clade assignment
- Nextclade dataset retrieval
- Clade assignment, mutation calling, QC
- Auspice JSON generation
summary_report.tsvmerged_bam_coverage_results.tsvnextclade_report.tsvcombined_snpsift_report.tsvtyping_report.tsvqc_report.tsv
Purpose: Nanopore-based influenza analysis for clinical samples.
- See usage for instructions on how to create the samplesheet.csv input.
Command:
nextflow run main.nf -profile <docker/singularity> --platform flu_nanopore --input '[path to samplesheet file: samplesheet_nanopore.csv]' --outdir <OUTDIR>-
Samplesheet validation
- Read-count threshold filtering
-
Long-read preprocessing
- NanoPlot QC
- Primer trimming
- Optional adapter trimming
- Quality filtering
-
Assembly & typing
- IRMA (FLU-minion module)
- Consensus QC
- Segment-level metrics
- Influenza typing (Abricate)
- Deterministic Nextclade dataset selection
-
Variant annotation
- SnpEff annotation
- Variant summarization
-
Clade assignment
- Nextclade analysis and reporting
summary_report.tsvmerged_bam_coverage_results.tsvnextclade_report.tsvcombined_snpsift_report.tsvtyping_report.tsvqc_report.tsv
Purpose: Illumina-based influenza wastewater analysis.
- See usage for instructions on how to create the samplesheet.csv input.
Command:
nextflow run main.nf -profile <docker/singularity> --platform flu_ww_illumina --input '[path to samplesheet file: samplesheet_ww_illumina.csv]' --outdir <OUTDIR>Freyja reference datasets are automatically updated at runtime.
-
Optional SRA retrieval
-
Read preprocessing & QC
-
Multi-reference alignment
- Minimap2 + Samtools
-
Variant calling
- samtools + iVar
-
Lineage deconvolution
- Freyja demix and bootstrap
-
Aggregated lineage reporting
freyja_aggregate_report.tsvqc_report.tsv
Purpose: Nanopore-based influenza wastewater analysis.
- See usage for instructions on how to create the samplesheet.csv input.
Command:
nextflow run main.nf -profile <docker/singularity> --platform flu_ww_nanopore --input '[path to samplesheet file: samplesheet_ww_illumina.csv]' --outdir <OUTDIR>Freyja reference datasets are automatically updated at runtime.
- Read preprocessing
- Multi-reference alignment
- Variant calling
- Freyja lineage deconvolution
- Aggregated reporting
freyja_aggregate_report.tsvqc_report.tsv
Purpose: Illumina-based RSV analysis.
- See usage for instructions on how to create the samplesheet.csv input.
Command:
nextflow run main.nf -profile <docker/singularity> --platform rsv_illumina --input '[path to samplesheet file: samplesheet.csv]' --outdir <OUTDIR>-
Optional SRA retrieval
-
Read preprocessing & QC
-
Assembly
- IRMA (RSV module)
-
Segment-level metrics
- Coverage, mapped reads, depth
-
Variant annotation
- SnpEff + SnpSift
-
Clade assignment
- Nextclade analysis
summary_report.tsvmerged_bam_coverage_results.tsvnextclade_report.tsvcombined_snpsift_report.tsvqc_report.tsv
-
Install
Nextflow(>=24.04.2) -
Install any of
Docker,Singularity(you can follow this tutorial),Podman,ShifterorCharliecloudfor full pipeline reproducibility. -
Download the pipeline and test it on a minimal dataset with a single command:
nextflow run main.nf -profile test,<docker/singularity> --outdir <OUTDIR>
Note that some form of configuration will be needed so that Nextflow knows how to fetch the required software. This is usually done in the form of a config profile (
YOURPROFILEin the example command above). You can chain multiple config profiles in a comma-separated string.- The pipeline comes with config profiles called
docker,singularity,podman,shifter, andcharliecloudwhich instruct the pipeline to use the named tool for software management. For example,-profile test,docker. - Please check nf-core/configs to see if a custom config file to run nf-core pipelines already exists for your Institute. If so, you can simply use
-profile <institute>in your command. This will enable eitherdockerorsingularityand set the appropriate execution settings for your local compute environment. - If you are using
singularity, please use thenf-core downloadcommand to download images first, before running the pipeline. Setting theNXF_SINGULARITY_CACHEDIRorsingularity.cacheDirNextflow options enables you to store and re-use the images from a central location for future pipeline runs.
- The pipeline comes with config profiles called
-
Start running your own analysis!
nextflow run main.nf -profile <docker/singularity> --platform <flu_illumina/flu_nanopore/flu_ww_illumina/flu_ww_nanopore/rsv_illumina> --input samplesheet.csv --outdir <OUTDIR>
-
It is advisable to delete large temporary or log files after the successful completion of the run. It takes a lot of space and may cause issues in future runs.
rm -rf work/ .nextflow* .nextflow.log*
The UPHL-BioNGS/walkercreek pipeline comes with documentation about the pipeline usage and output.
UPHL-BioNGS/walkercreek was written by Tom Iverson @tives82.
If you would like to contribute to this pipeline, please see the contributing guidelines. Contributions are welcome!
An extensive list of references for the tools used by the pipeline can be found in the CITATIONS.md file.
