EnTAPnf is a workflow that executes the Eukaryotic Non-Model Transcriptome Annotation Pipeline (EnTAP). EnTAP is designed to improve the accuracy, speed, and flexibility of functional gene annotation for both genomes and de novo assembled transcriptomes in non-model eukaryotes.
EnTAPnf is constructed 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.
This repository provides a pipeline that does the following:
- Generates bulk input data for EnTAP:
- Supports BLAST results vs NCBI nr, ExPASy SwissProt, ExPASy Tremble, NCBI RefSeq
- Executes InterProScan
- Executes EnTAP by providing the bulk data input.
EnTAP can run in a stand-alone manner and produce good results when the species is closely related to other species with high quality annotations in the EggNOG database. Otherwise, more information is needed. While EnTAP does perform Diamond blast on a large genome or transcriptome, other tools such as InterProScan can be very time consuming to run on a stand alone machine.
This workflow allows you to use a high-performance cluster (HPC), Kubernetes cluster or cloud computing resources to pre-compute the bulk data needed by EnTAP.
EnTAPnf can also provide additional information such as potential protein-protein interactions through alignment with the orthologs provided in the STRING database.
Tripal is an open-source toolkit for the construction of online genome repositories. Tripal provides infrastructure for genome databases around the world and these sites often need to refresh the functional annotations on the genomes they provide. EnTAPnf provides an easy way to allow these site to generate updated bulk data for upload to a Tripal site as well as to run EnTAP for high-quality in-silico annotations.
- Homology searching against specified databases using Diamond BLAST (
Diamond
). Supported databases include:- NCBI nr
- NCBI RefSeq
- ExPASy SwissProt
- ExPASy Trembl
- STRING database
- Execution of InterProScan
-
Download databases. EnTAPnf must have available the databases. These can take quite a while to download and can consume large amounts of storage. Use the bash scripts in the
scripts
folder to retrieve and index the databases prior to using this workflow. -
Install
Nextflow
(>=21.10.3
) -
Install any of
Docker
,Singularity
,Podman
,Shifter
orCharliecloud
for full pipeline reproducibility (Conda
is currently not supported); see docs), -
Download the pipeline and test it on a minimal dataset with a single command:
nextflow run systemsgenetics/entapnf -profile test,<docker/singularity/podman/shifter/charliecloud/conda/institute>
- 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 eitherdocker
orsingularity
and set the appropriate execution settings for your local compute environment. - If you are using
singularity
then the pipeline will auto-detect this and attempt to download the Singularity images directly as opposed to performing a conversion from Docker images. If you are persistently observing issues downloading Singularity images directly due to timeout or network issues then please use the--singularity_pull_docker_container
parameter to pull and convert the Docker image instead. Alternatively, it is highly recommended to use thenf-core download
command to pre-download all of the required containers before running the pipeline and to set theNXF_SINGULARITY_CACHEDIR
orsingularity.cacheDir
Nextflow options to be able to store and re-use the images from a central location for future pipeline runs.
- 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
-
Start running your own analysis!
nextflow run systemsgenetics/entapnf \ -profile <docker/singularity/podman/shifter/charliecloud/conda/institute> \ --batch_size 100 \ --input <fasta file> \ --data_sprot <directory with swissprot diamond index> \ --data_refseq <directory with refseq diamond index> \ --data_ipr <directory with InterProScan data> \ --max_cpus 10 \ --max_memory 6GB
- The
--batch_size
arguments indicates the number of sequences to process in each batch. - It is recommended if using NCBI nr to set a large enough
--max_memory
size.
The systemsgenetics/entapnf pipeline has full online documentation.
EnTAPnf was originally named AnnoTater and was written by the Ficklin Computational Biology Team at Washington State University. Originally it was anticipated that it would provide very similar functionality as EnTAP, developed by the Wegrzyn Plant Computational Genomics Lab at the University of Connecticut. Rather than develop a competing workflow, AnnoTater was renamed to EnTAPnf and incorporates EnTAP to provide the high-quality in-silico annotations. EnTAPnf brings scalability to EnTAP.
Development of EnTAPnf was funded by the U.S. National Science Foundation (NSF) Award #1659300. It was funded separately from the EnTAP stand-alone tool. Please see the EnTAP documentation for its funding sources.
If you would like to contribute to this pipeline, please see the contributing guidelines.
EnTAPnf is currently unpublished. For now, please use the GitHub URL when referencing.
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.