Introduction
sanger-tol/treeval [1.1.0 - Ancient Aurora] is a bioinformatics best-practice analysis pipeline for the generation of data supplemental to the curation of reference quality genomes. This pipeline has been written to generate flat files compatible with JBrowse2 as well as HiC maps for use in Juicebox, PretextView and HiGlass.
The pipeline is built using Nextflow, a workflow tool to run tasks across multiple compute infrastructures in a very portable manner. It uses Docker/Singularity containers making installation trivial and results highly reproducible. The Nextflow DSL2 implementation of this pipeline uses one container per process which makes it much easier to maintain and update software dependencies. Where possible, these processes have been submitted to and installed from nf-core/modules in order to make them available to all nf-core pipelines, and to everyone within the Nextflow community!
You can also set up and attempt to run the pipeline here: https://gitpod.io/#https://github.com/BGAcademy23/treeval-curation This is a gitpod set up for BGA23 with a version of TreeVal, although for now gitpod will not run a nextflow pipeline die to issues with using singularity. We will be replacing this with an AWS instance soon.
The treeval pipeline has a sister pipeline currently named curationpretext which acts to regenerate the pretext maps and accessory files during genomic curation in order to confirm interventions. This pipeline is sufficiently different to the treeval implementation that it is written as it's own pipeline.
- Parse input yaml ( YAML_INPUT )
- Generate my.genome file ( GENERATE_GENOME )
- Generate insilico digests of the input assembly ( INSILICO_DIGEST )
- Generate gene alignments with high quality data against the input assembly ( GENE_ALIGNMENT )
- Generate a repeat density graph ( REPEAT_DENSITY )
- Generate a gap track ( GAP_FINDER )
- Generate a map of self complementary sequence ( SELFCOMP )
- Generate syntenic alignments with a closely related high quality assembly ( SYNTENY )
- Generate a coverage track using PacBio data ( LONGREAD_COVERAGE )
- Generate HiC maps, pretext and higlass using HiC cram files ( HIC_MAPPING )
- Generate a telomere track based on input motif ( TELO_FINDER )
- Run Busco and convert results into bed format ( BUSCO_ANNOTATION )
- Ancestral Busco linkage if available for clade ( BUSCO_ANNOTATION:ANCESTRAL_GENE )
- Count KMERs with FastK and plot the spectra using MerquryFK ( KMER )
- Generate a coverge track using KMER data ( KMER_READ_COVERAGE )
Usage
Note
If you are new to Nextflow and nf-core, please refer to this page on how
to set-up Nextflow. Make sure to test your setup
with -profile test
before running the workflow on actual data.
Note
If you are new to Nextflow and nf-core, please refer to this page on how
to set-up Nextflow. Make sure to test your setup
with -profile test
before running the workflow on actual data.
Currently, it is advised to run the pipeline with docker or singularity as a small number of major modules do not currently have a conda env associated with them.
Now, you can run the pipeline using:
# For the FULL pipeline
nextflow run main.nf -profile singularity --input treeval.yaml --outdir {OUTDIR}
# For the RAPID subset
nextflow run main.nf -profile singularity --input treeval.yaml -entry RAPID --outdir {OUTDIR}
An example treeval.yaml can be found here.
Further documentation about the pipeline can be found in the following files: usage, parameters and output.
Warning: Please provide pipeline parameters via the CLI or Nextflow
-params-file
option. Custom config files including those provided by the-c
Nextflow option can be used to provide any configuration except for parameters; see docs.
Credits
sanger-tol/treeval has been written by Damon-Lee Pointon (@DLBPointon), Yumi Sims (@yumisims) and William Eagles (@weaglesBio).
We thank the following people for their extensive assistance in the development of this pipeline:
- @gq1 - For building the infrastructure around TreeVal and helping with code review
- @ksenia-krasheninnikova - For help with C code implementation and YAML parsing
- @mcshane - For guidance on algorithms
- @muffato - For code reviews and code support
- @priyanka-surana - For help with the majority of code reviews and code support
Contributions and Support
If you would like to contribute to this pipeline, please see the contributing guidelines.
Citations
If you use sanger-tol/treeval for your analysis, please cite it using the following doi: 10.5281/zenodo.10047653.
Tools
An extensive list of references for the tools used by the pipeline can be found in the CITATIONS.md
file.
You can cite the nf-core
publication as follows:
The nf-core framework for community-curated bioinformatics pipelines.
Philip Ewels, Alexander Peltzer, Sven Fillinger, Harshil Patel, Johannes Alneberg, Andreas Wilm, Maxime Ulysse Garcia, Paolo Di Tommaso & Sven Nahnsen.
Nat Biotechnol. 2020 Feb 13. doi: 10.1038/s41587-020-0439-x.