Introduction
nf-core/bacmodel is a bioinformatics pipeline for comprehensive functional annotation and metabolic modeling of bacterial genomes. The pipeline takes bacterial genome assemblies (FASTA format) and performs structural annotation using Prokka or Bakta, followed by functional characterization using specialized tools for macromolecular system detection (MacSyFinder), phenotype prediction (Traitar), and metabolic model reconstruction (CarveMe and gapseq). It produces a complete picture of genomic potential, functional capabilities, and predicted metabolic pathways.
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!
- Genome annotation with Prokka or Bakta
- Macromolecular system detection with MacSyFinder (optional)
- Phenotype prediction with Traitar (optional)
- Metabolic model reconstruction with CarveMe or gapseq (optional)
- Model quality evaluation with MEMOTE (optional)
Usage
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.
First, prepare a samplesheet with your input data that looks as follows:
samplesheet.tsv:
sample fasta
sample1 /path/to/genome1.fasta
sample2 /path/to/genome2.fasta.gz
sample3 https://example.com/genome3.fasta.gzEach row represents a bacterial genome assembly. The fasta column can contain:
- Local file paths (absolute or relative)
- URLs to remote FASTA files
- Gzipped or uncompressed FASTA format
Now, you can run the pipeline using:
nextflow run nf-core/bacmodel \
-profile <docker/singularity/.../institute> \
--input samplesheet.tsv \
--outdir <OUTDIR>By default, the pipeline runs Prokka annotation. To use Bakta instead:
nextflow run nf-core/bacmodel \
-profile <docker/singularity/.../institute> \
--input samplesheet.tsv \
--annotation_tool bakta \
--outdir <OUTDIR>To enable optional functional analysis tools:
nextflow run nf-core/bacmodel \
-profile <docker/singularity/.../institute> \
--input samplesheet.tsv \
--run_macsyfinder true \
--run_traitar true \
--run_carveme true \
--run_gapseq true \
--run_memote true \
--outdir <OUTDIR>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.
For more details and further functionality, please refer to the usage documentation and the parameter documentation.
Pipeline output
To see the results of an example test run with a full size dataset refer to the results tab on the nf-core website pipeline page. For more details about the output files and reports, please refer to the output documentation.
Credits
nf-core/bacmodel was originally written by Olga Brovkina at the Institute of Clinical Molecular Biology (IKMB), Kiel University.
We thank the following people for their extensive assistance in the development of this pipeline:
- The nf-core community for providing excellent tools and modules
- The developers of Prokka, Bakta, MacSyFinder, Traitar, and CarveMe for their excellent software
Contributions and Support
If you would like to contribute to this pipeline, please see the contributing guidelines.
For further information or help, don’t hesitate to get in touch on the Slack #bacmodel channel (you can join with this invite).
Citations
If you use nf-core/bacmodel for your analysis, please cite the pipeline along with the tools it uses:
Core annotation tools
-
Prokka - Seemann T. (2014) Prokka: rapid prokaryotic genome annotation. Bioinformatics, 30(14):2068-9. doi: 10.1093/bioinformatics/btu153
-
Bakta - Schwengers O, et al. (2021) Bakta: rapid and standardized annotation of bacterial genomes via alignment-free sequence identification. Microb Genom, 7(11):000685. doi: 10.1099/mgen.0.000685
Functional characterization tools
-
MacSyFinder - Néron B, et al. (2023) MacSyFinder v2: Improved modelling and search engine to identify molecular systems in genomes. Peer Community Journal, 3:e28. doi: 10.24072/pcjournal.250
-
TRAITAR - Weimann A, et al. (2016) From Genomes to Phenotypes: Traitar, the Microbial Trait Analyzer. mSystems, 1(6):e00101-16. doi: 10.1128/mSystems.00101-16
Metabolic modeling tools
-
CarveMe - Machado D, et al. (2018) Fast automated reconstruction of genome-scale metabolic models for microbial species and communities. Nucleic Acids Res, 46(15):7542-7553. doi: 10.1093/nar/gky537
-
gapseq - Zimmermann J, et al. (2021) gapseq: informed prediction of bacterial metabolic pathways and reconstruction of accurate metabolic models. Genome Biol, 22(1):81. doi: 10.1186/s13059-021-02295-1
-
MEMOTE - Lieven C, et al. (2020) MEMOTE for standardized genome-scale metabolic model testing. Nat Biotechnol, 38(3):272-276. doi: 10.1038/s41587-020-0446-y
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.