proteinfold

Protein 3D structure prediction pipeline

https://github.com/nf-core/proteinfold

Science Score: 57.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 10 DOI reference(s) in README
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.4%) to scientific vocabulary

Keywords

alphafold2 colabfold esmfold nextflow nf-core pipeline protein-fold-prediction protein-folding protein-sequences protein-structure workflow

Keywords from Contributors

dsl2 nf-test pipelines workflows atac-seq chromatin-accessibiity
Last synced: 6 months ago · JSON representation ·

Repository

Protein 3D structure prediction pipeline

Basic Info
Statistics
  • Stars: 85
  • Watchers: 173
  • Forks: 58
  • Open Issues: 53
  • Releases: 3
Topics
alphafold2 colabfold esmfold nextflow nf-core pipeline protein-fold-prediction protein-folding protein-sequences protein-structure workflow
Created almost 4 years ago · Last pushed 6 months ago
Metadata Files
Readme Changelog Contributing License Code of conduct Citation

README.md

nf-core/proteinfold

GitHub Actions CI Status GitHub Actions Linting StatusAWS CICite with Zenodo nf-test

Nextflow run with conda run with docker run with singularity Launch on Seqera Platform

Get help on SlackFollow on TwitterFollow on MastodonWatch on YouTube

Introduction

nf-core/proteinfold is a bioinformatics best-practice analysis pipeline for Protein 3D structure prediction.

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!

On release, automated continuous integration tests run the pipeline on a full-sized dataset on the AWS cloud infrastructure. This ensures that the pipeline runs on AWS, has sensible resource allocation defaults set to run on real-world datasets, and permits the persistent storage of results to benchmark between pipeline releases and other analysis sources. The results obtained from the full-sized test can be viewed on the nf-core website.

Pipeline summary

Alt text

  1. Choice of protein structure prediction method:

i. AlphaFold2 - Regular AlphaFold2 (MSA computation and model inference in the same process)

ii. AlphaFold2 split - AlphaFold2 MSA computation and model inference in separate processes

iii. ColabFold - MMseqs2 API server followed by ColabFold

iv. ColabFold - MMseqs2 local search followed by ColabFold

v. ESMFold - Regular ESM

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.

Now, you can run the pipeline using:

bash nextflow run nf-core/proteinfold \ -profile <docker/singularity/.../institute> \ --input samplesheet.csv \ --outdir <OUTDIR>

The pipeline takes care of downloading the databases and parameters required by AlphaFold2, Colabfold or ESMFold. In case you have already downloaded the required files, you can skip this step by providing the path to the databases using the corresponding parameter [--alphafold2_db], [--colabfold_db] or [--esmfold_db]. Please refer to the usage documentation to check the directory structure you need to provide for each of the databases.

  • The typical command to run AlphaFold2 mode is shown below:

console nextflow run nf-core/proteinfold \ --input samplesheet.csv \ --outdir <OUTDIR> \ --mode alphafold2 \ --alphafold2_db <null (default) | DB_PATH> \ --full_dbs <true/false> \ --alphafold2_model_preset monomer \ --use_gpu <true/false> \ -profile <docker/singularity/podman/shifter/charliecloud/conda/institute>

  • Here is the command to run AlphaFold2 splitting the MSA from the prediction execution:

console nextflow run nf-core/proteinfold \ --input samplesheet.csv \ --outdir <OUTDIR> \ --mode alphafold2 \ --alphafold2_mode split_msa_prediction \ --alphafold2_db <null (default) | DB_PATH> \ --full_dbs <true/false> \ --alphafold2_model_preset monomer \ --use_gpu <true/false> \ -profile <docker/singularity/podman/shifter/charliecloud/conda/institute>

  • Below, the command to run colabfold_local mode:

console nextflow run nf-core/proteinfold \ --input samplesheet.csv \ --outdir <OUTDIR> \ --mode colabfold \ --colabfold_server local \ --colabfold_db <null (default) | PATH> \ --num_recycles_colabfold 3 \ --use_amber <true/false> \ --colabfold_model_preset "AlphaFold2-ptm" \ --use_gpu <true/false> \ --db_load_mode 0 -profile <docker/singularity/podman/shifter/charliecloud/conda/institute>

  • The typical command to run colabfold_webserver mode would be:

console nextflow run nf-core/proteinfold \ --input samplesheet.csv \ --outdir <OUTDIR> \ --mode colabfold \ --colabfold_server webserver \ --host_url <custom MMSeqs2 API Server URL> \ --colabfold_db <null (default) | PATH> \ --num_recycles_colabfold 3 \ --use_amber <true/false> \ --colabfold_model_preset "AlphaFold2-ptm" \ --use_gpu <true/false> \ -profile <docker/singularity/podman/shifter/charliecloud/conda/institute>

[!WARNING]

If you aim to carry out a large amount of predictions using the colabfold_webserver mode, please setup and use your own custom MMSeqs2 API Server. You can find instructions here.

  • The esmfold mode can be run using the command below:

console nextflow run nf-core/proteinfold \ --input samplesheet.csv \ --outdir <OUTDIR> \ --mode esmfold \ --esmfold_model_preset <monomer/multimer> \ --esmfold_db <null (default) | PATH> \ --num_recycles_esmfold 4 \ --use_gpu <true/false> \ -profile <docker/singularity/podman/shifter/charliecloud/conda/institute>

[!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.

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/proteinfold was originally written by Athanasios Baltzis (@athbaltzis), Jose Espinosa-Carrasco (@JoseEspinosa), Luisa Santus (@luisas) and Leila Mansouri (@l-mansouri) from The Comparative Bioinformatics Group at The Centre for Genomic Regulation, Spain under the umbrella of the BovReg project and Harshil Patel (@drpatelh) from Seqera Labs, Spain.

Many thanks to others who have helped out and contributed along the way too, including (but not limited to): Norman Goodacre and Waleed Osman from Interline Therapeutics (@interlinetx), Martin Steinegger (@martin-steinegger) and Raoul J.P. Bonnal (@rjpbonnal)

We would also like to thanks to the AWS Open Data Sponsorship Program for generously providing the resources necessary to host the data utilized in the testing, development, and deployment of nf-core proteinfold.

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 #proteinfold channel (you can join with this invite).

Citations

If you use nf-core/proteinfold for your analysis, please cite it using the following doi: 10.5281/zenodo.7437038

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.

Owner

  • Name: nf-core
  • Login: nf-core
  • Kind: organization
  • Email: core@nf-co.re

A community effort to collect a curated set of analysis pipelines built using Nextflow.

Citation (CITATIONS.md)

# nf-core/proteinfold: Citations

## [nf-core](https://pubmed.ncbi.nlm.nih.gov/32055031/)

> Ewels PA, Peltzer A, Fillinger S, Patel H, Alneberg J, Wilm A, Garcia MU, Di Tommaso P, Nahnsen S. The nf-core framework for community-curated bioinformatics pipelines. Nat Biotechnol. 2020 Mar;38(3):276-278. doi: 10.1038/s41587-020-0439-x. PubMed PMID: 32055031.

## [Nextflow](https://pubmed.ncbi.nlm.nih.gov/28398311/)

> Di Tommaso P, Chatzou M, Floden EW, Barja PP, Palumbo E, Notredame C. Nextflow enables reproducible computational workflows. Nat Biotechnol. 2017 Apr 11;35(4):316-319. doi: 10.1038/nbt.3820. PubMed PMID: 28398311.

## Pipeline tools

- [AlphaFold](https://pubmed.ncbi.nlm.nih.gov/34265844/)
  Jumper J et al. Highly accurate protein structure prediction with AlphaFold. Nature. 2021 Aug;596(7873):583-589. doi: 10.1038/s41586-021-03819-2. PubMed PMID: 34265844; PubMed Central PMCID: PMC8371605.

- [ColabFold](https://pubmed.ncbi.nlm.nih.gov/35637307/)
  Mirdita M, Schütze K, Moriwaki Y, Heo L, Ovchinnikov S, Steinegger M. ColabFold: making protein folding accessible to all. Nat Methods. 2022 Jun;19(6):679-682. doi: 10.1038/s41592-022-01488-1. Epub 2022 May 30. PMID: 35637307; PMCID: PMC9184281.

- [MMseqs2](https://pubmed.ncbi.nlm.nih.gov/26743509/)
  Hauser M, Steinegger M, Söding J. MMseqs software suite for fast and deep clustering and searching of large protein sequence sets. Bioinformatics. 2016 May 1;32(9):1323-30. doi: 10.1093/bioinformatics/btw006. Epub 2016 Jan 6. PubMed PMID: 26743509.

- [ESMFold](https://pubmed.ncbi.nlm.nih.gov/36927031/)
  Lin Z, Akin H, Rao R, Hie B, Zhu Z, Lu W, Smetanin N, Verkuil R, Kabeli O, Shmueli Y, Dos Santos Costa A, Fazel-Zarandi M, Sercu T, Candido S, Rives A. Evolutionary-scale prediction of atomic-level protein structure with a language model. Science. 2023 Mar 17;379(6637):1123-1130. doi: 10.1126/science.ade2574. Epub 2023 Mar 16. PMID: 36927031.

  > Andrews, S. (2010). FastQC: A Quality Control Tool for High Throughput Sequence Data [Online].

- [MultiQC](https://pubmed.ncbi.nlm.nih.gov/27312411/)

  > Ewels P, Magnusson M, Lundin S, Käller M. MultiQC: summarize analysis results for multiple tools and samples in a single report. Bioinformatics. 2016 Oct 1;32(19):3047-8. doi: 10.1093/bioinformatics/btw354. Epub 2016 Jun 16. PubMed PMID: 27312411; PubMed Central PMCID: PMC5039924.

## Software packaging/containerisation tools

- [Anaconda](https://anaconda.com)

  > Anaconda Software Distribution. Computer software. Vers. 2-2.4.0. Anaconda, Nov. 2016. Web.

- [Bioconda](https://pubmed.ncbi.nlm.nih.gov/29967506/)

  > Grüning B, Dale R, Sjödin A, Chapman BA, Rowe J, Tomkins-Tinch CH, Valieris R, Köster J; Bioconda Team. Bioconda: sustainable and comprehensive software distribution for the life sciences. Nat Methods. 2018 Jul;15(7):475-476. doi: 10.1038/s41592-018-0046-7. PubMed PMID: 29967506.

- [BioContainers](https://pubmed.ncbi.nlm.nih.gov/28379341/)

  > da Veiga Leprevost F, Grüning B, Aflitos SA, Röst HL, Uszkoreit J, Barsnes H, Vaudel M, Moreno P, Gatto L, Weber J, Bai M, Jimenez RC, Sachsenberg T, Pfeuffer J, Alvarez RV, Griss J, Nesvizhskii AI, Perez-Riverol Y. BioContainers: an open-source and community-driven framework for software standardization. Bioinformatics. 2017 Aug 15;33(16):2580-2582. doi: 10.1093/bioinformatics/btx192. PubMed PMID: 28379341; PubMed Central PMCID: PMC5870671.

- [Docker](https://dl.acm.org/doi/10.5555/2600239.2600241)

  > Merkel, D. (2014). Docker: lightweight linux containers for consistent development and deployment. Linux Journal, 2014(239), 2. doi: 10.5555/2600239.2600241.

- [Singularity](https://pubmed.ncbi.nlm.nih.gov/28494014/)

  > Kurtzer GM, Sochat V, Bauer MW. Singularity: Scientific containers for mobility of compute. PLoS One. 2017 May 11;12(5):e0177459. doi: 10.1371/journal.pone.0177459. eCollection 2017. PubMed PMID: 28494014; PubMed Central PMCID: PMC5426675.

GitHub Events

Total
  • Issues event: 125
  • Watch event: 28
  • Delete event: 28
  • Issue comment event: 259
  • Push event: 63
  • Pull request review comment event: 104
  • Pull request review event: 167
  • Pull request event: 136
  • Fork event: 19
  • Create event: 14
Last Year
  • Issues event: 125
  • Watch event: 28
  • Delete event: 28
  • Issue comment event: 259
  • Push event: 63
  • Pull request review comment event: 104
  • Pull request review event: 167
  • Pull request event: 136
  • Fork event: 19
  • Create event: 14

Committers

Last synced: over 2 years ago

All Time
  • Total Commits: 334
  • Total Committers: 9
  • Avg Commits per committer: 37.111
  • Development Distribution Score (DDS): 0.551
Past Year
  • Commits: 257
  • Committers: 8
  • Avg Commits per committer: 32.125
  • Development Distribution Score (DDS): 0.549
Top Committers
Name Email Commits
JoseEspinosa k****u@g****m 150
Athanasios Baltzis b****s@g****m 148
Leila Mansouri l****i@c****s 15
nf-core-bot c****e@n****e 9
Raoul J.P. Bonnal r****l@i****u 6
luisas l****5@g****m 3
Harshil Patel d****h@g****m 1
James A. Fellows Yates j****3@g****m 1
Leila Mansouri l****i@a****s 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 135
  • Total pull requests: 194
  • Average time to close issues: about 1 month
  • Average time to close pull requests: 6 days
  • Total issue authors: 30
  • Total pull request authors: 22
  • Average comments per issue: 0.93
  • Average comments per pull request: 1.06
  • Merged pull requests: 139
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 81
  • Pull requests: 89
  • Average time to close issues: about 1 month
  • Average time to close pull requests: 8 days
  • Issue authors: 13
  • Pull request authors: 15
  • Average comments per issue: 0.7
  • Average comments per pull request: 0.97
  • Merged pull requests: 45
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • JoseEspinosa (47)
  • tlitfin-unsw (14)
  • jscgh (14)
  • keiran-rowell-unsw (9)
  • rjpbonnal (8)
  • athbaltzis (8)
  • luisas (4)
  • ziadbkh (4)
  • Nicobouch (3)
  • ArlindNocaj (2)
  • nfg-interline (2)
  • drpatelh (2)
  • lee-t (1)
  • Madhumitha0206 (1)
  • asmaali98 (1)
Pull Request Authors
  • JoseEspinosa (72)
  • athbaltzis (29)
  • nf-core-bot (25)
  • tlitfin-unsw (12)
  • jscgh (12)
  • ziadbkh (11)
  • rjpbonnal (5)
  • Mitchob (4)
  • luisas (4)
  • nbtm-sh (3)
  • keiran-rowell-unsw (3)
  • l-mansouri (2)
  • vagkaratzas (2)
  • qclayssen (2)
  • FriederikeHanssen (1)
Top Labels
Issue Labels
enhancement (70) bug (59) WIP (3) documentation (2) feature-request (2)
Pull Request Labels
enhancement (3) WIP (3)

Dependencies

.github/workflows/awsfulltest.yml actions
  • actions/upload-artifact v3 composite
  • nf-core/tower-action v3 composite
.github/workflows/awstest.yml actions
  • actions/upload-artifact v3 composite
  • nf-core/tower-action v3 composite
.github/workflows/branch.yml actions
  • mshick/add-pr-comment v1 composite
.github/workflows/ci.yml actions
  • actions/checkout v3 composite
  • actions/checkout v2 composite
  • nf-core/setup-nextflow v1 composite
.github/workflows/fix-linting.yml actions
  • actions/checkout v3 composite
  • actions/setup-node v3 composite
.github/workflows/linting.yml actions
  • actions/checkout v3 composite
  • actions/setup-node v3 composite
  • actions/setup-python v4 composite
  • actions/upload-artifact v3 composite
  • mshick/add-pr-comment v1 composite
  • nf-core/setup-nextflow v1 composite
  • psf/black stable composite
.github/workflows/linting_comment.yml actions
  • dawidd6/action-download-artifact v2 composite
  • marocchino/sticky-pull-request-comment v2 composite
modules/nf-core/aria2/meta.yml cpan
modules/nf-core/custom/dumpsoftwareversions/meta.yml cpan
modules/nf-core/gunzip/meta.yml cpan
modules/nf-core/mmseqs/createindex/meta.yml cpan
modules/nf-core/mmseqs/tsv2exprofiledb/meta.yml cpan
modules/nf-core/multiqc/meta.yml cpan
modules/nf-core/untar/meta.yml cpan
pyproject.toml pypi