{"id":40685655,"url":"https://github.com/haddocking/prodigy","last_synced_at":"2026-01-21T10:43:35.683Z","repository":{"id":33888281,"uuid":"37600700","full_name":"haddocking/prodigy","owner":"haddocking","description":"Predict the binding affinity of protein-protein complexes from structural data","archived":false,"fork":false,"pushed_at":"2025-09-23T13:42:48.000Z","size":5758,"stargazers_count":146,"open_issues_count":0,"forks_count":30,"subscribers_count":13,"default_branch":"main","last_synced_at":"2025-09-23T15:32:40.199Z","etag":null,"topics":["binding-affinity","bioinformatics","python3","utrecht-university"],"latest_commit_sha":null,"homepage":"https://wenmr.science.uu.nl/prodigy/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/haddocking.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2015-06-17T14:41:42.000Z","updated_at":"2025-09-23T13:42:51.000Z","dependencies_parsed_at":"2023-02-14T18:16:26.691Z","dependency_job_id":"09a08c86-e4ce-4093-80f6-1a75f09e57a0","html_url":"https://github.com/haddocking/prodigy","commit_stats":null,"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"purl":"pkg:github/haddocking/prodigy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haddocking%2Fprodigy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haddocking%2Fprodigy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haddocking%2Fprodigy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haddocking%2Fprodigy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/haddocking","download_url":"https://codeload.github.com/haddocking/prodigy/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haddocking%2Fprodigy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28631957,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-21T04:47:28.174Z","status":"ssl_error","status_checked_at":"2026-01-21T04:47:22.943Z","response_time":86,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["binding-affinity","bioinformatics","python3","utrecht-university"],"created_at":"2026-01-21T10:43:35.002Z","updated_at":"2026-01-21T10:43:35.678Z","avatar_url":"https://github.com/haddocking.png","language":"Python","readme":"# PRODIGY / Binding Affinity Prediction\n\n![PyPI - Downloads](https://img.shields.io/pypi/dm/prodigy-prot)\n![PyPI - Version](https://img.shields.io/pypi/v/prodigy-prot)\n![PyPI - Python Version](https://img.shields.io/pypi/pyversions/prodigy-prot)\n\n[![ci](https://github.com/haddocking/prodigy/actions/workflows/ci.yml/badge.svg)](https://github.com/haddocking/prodigy/actions/workflows/ci.yml)\n[![Codacy Badge](https://app.codacy.com/project/badge/Grade/98180cbac27d4a5aaf46a3dd72c3174d)](https://www.codacy.com/gh/haddocking/prodigy/dashboard?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=haddocking/prodigy\u0026utm_campaign=Badge_Grade)\n[![Codacy Badge](https://app.codacy.com/project/badge/Coverage/98180cbac27d4a5aaf46a3dd72c3174d)](https://www.codacy.com/gh/haddocking/prodigy/dashboard?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=haddocking/prodigy\u0026utm_campaign=Badge_Coverage)\n\n![PyPI - License](https://img.shields.io/pypi/l/prodigy-prot)\n[![fair-software.eu](https://img.shields.io/badge/fair--software.eu-%E2%97%8F%20%20%E2%97%8F%20%20%E2%97%8F%20%20%E2%97%8F%20%20%E2%97%8F-green)](https://fair-software.eu)\n[![SQAaaS badge shields.io](https://img.shields.io/badge/sqaaas%20software-gold-yellow)](https://api.eu.badgr.io/public/assertions/w8HcpcH4Svi3-UZ93LHHMA \"SQAaaS gold badge achieved\")\n\n---\n\nPRODIGY is also available as a web service @ [wenmr.science.uu.nl/prodigy](https://wenmr.science.uu.nl/prodigy/)\n\n## Installation\n\n```text\npip install prodigy-prot\n```\n\nIf you want to develop PRODIGY, check [DEVELOPMENT](DEVELOPMENT.md) for more details.\n\n## Usage\n\nYou can run `prodigy` either on a single structure:\n\n```bash\nprodigy \u003cstructure_file\u003e\n```\n\nOr in a directory containing multiple molecules:\n\n```bash\nprodigy \u003cdirectory_with_molecules\u003e\n```\n\nOr using a multi-model input PDB file (an ensemble)\n\n```bash\nprodigy \u003cmulti_model.pdb\u003e\n```\n\n\u003e If you are running several structures, try using the `-np` argument to run\n\u003e in multiple processors\n\nTo get a list of all the possible options.\n\n```bash\n$ prodigy -h\nusage: prodigy [-h] [--distance-cutoff DISTANCE_CUTOFF] [--acc-threshold ACC_THRESHOLD] [--temperature TEMPERATURE] [--contact_list] [--pymol_selection] [-q] [-np NUMBER_OF_PROCESSORS]\n               [--selection A B [A,B C ...]]\n               input_path\n\nBinding affinity predictor based on Intermolecular Contacts (ICs).\n\npositional arguments:\n  input_path            Path to either:\n                        - Structure in PDB or mmCIF format\n                        - Directory containing structure files\n\noptions:\n  -h, --help            show this help message and exit\n  --distance-cutoff DISTANCE_CUTOFF\n                        Distance cutoff to calculate ICs\n  --acc-threshold ACC_THRESHOLD\n                        Accessibility threshold for BSA analysis\n  --temperature TEMPERATURE\n                        Temperature (C) for Kd prediction\n  --contact_list        Output a list of contacts\n  --pymol_selection     Output a script to highlight the interface (pymol)\n  -q, --quiet           Outputs only the predicted affinity value\n  -s, --showall         Outputs all original prodigy features but BSA (mutually exclusive with `-q`)\n  -np, --number-of-processors NUMBER_OF_PROCESSORS\n                        Number of processors to use (default: 1)\n\nSelection Options:\n\n  By default, all intermolecular contacts are taken into consideration,\n  a molecule being defined as an isolated group of amino acids sharing\n  a common chain identifier. In specific cases, for example\n  antibody-antigen complexes, some chains should be considered as a\n  single molecule.\n\n  Use the --selection option to provide collections of chains that should\n  be considered for the calculation. Separate by a space the chains that\n  are to be considered _different_ molecules. Use commas to include multiple\n  chains as part of a single group:\n\n  --selection A B =\u003e Contacts calculated (only) between chains A and B.\n  --selection A,B C =\u003e Contacts calculated (only) between     chains A and C; and B and C.\n  --selection A B C =\u003e Contacts calculated (only) between     chains A and B; B and C; and A and C.\n```\n\n## Example single structure\n\nDownload the PDB [3BZD](https://www.rcsb.org/structure/3bzd) and run PRODIGY on it.\n\n```bash\n$ curl -o 3bzd.pdb https://files.rcsb.org/download/3BZD.pdb\n$ prodigy 3bzd.pdb\n[+] Reading structure file: /Users/rvhonorato/dbg/3bzd.pdb\n[+] Parsed structure file 3bzd (2 chains, 343 residues)\n[+] No. of intermolecular contacts: 51\n[+] No. of charged-charged contacts: 4\n[+] No. of charged-polar contacts: 7\n[+] No. of charged-apolar contacts: 6\n[+] No. of polar-polar contacts: 7\n[+] No. of apolar-polar contacts: 15\n[+] No. of apolar-apolar contacts: 12\n[+] Percentage of apolar NIS residues: 29.48\n[+] Percentage of charged NIS residues: 29.48\n[++] Predicted binding affinity (kcal.mol-1):     -9.4\n[++] Predicted dissociation constant (M) at 25.0˚C:  1.3e-07\n```\n\nDetails of the binding affinity predictor implemented in PRODIGY can be found at [10.7554/elife.07454](https://doi.org/10.7554/elife.07454)\n\n## Example multiple structures\n\nCreate a directory that will hold your input molecules\n\n```bash\nmkdir input\n```\n\nDownload some molecules (or copy them into this directory):\n\n```text\ncurl -o input/3bzd.pdb https://files.rcsb.org/download/3BZD.pdb\ncurl -o input/2oob.pdb https://files.rcsb.org/download/2OOB.pdb\ncurl -o input/1ppe.pdb https://files.rcsb.org/download/1PPE.pdb\n```\n\nRun `prodigy` with the `quiet` option, so it is easier to parse the output later\nand run it with 2 processors via the `np` option.\n\n```bash\n$ prodigy -q -np 2 input/\n3bzd  -9.373\n2oob  -6.230\n1ppe -14.727\n```\n\n## Citing us\n\nIf our tool is useful to you, please cite PRODIGY in your publications:\n\n- **Xue L, Rodrigues J, Kastritis P, Bonvin A.M.J.J, Vangone A.**: PRODIGY: a web server for predicting the binding affinity of protein-protein complexes. _Bioinformatics_ (2016) ([10.1093/bioinformatics/btw514](https://doi.org/10.1093/bioinformatics/btw514))\n\n- **Anna Vangone and Alexandre M.J.J. Bonvin**: Contacts-based prediction of binding affinity in protein-protein complexes. _eLife_, e07454 (2015) ([10.7554/eLife.07454](https://doi.org/10.7554/elife.07454))\n\n- **Panagiotis L. Kastritis , João P.G.L.M. Rodrigues, Gert E. Folkers, Rolf Boelens, Alexandre M.J.J. Bonvin**: Proteins Feel More Than They See: Fine-Tuning of Binding Affinity by Properties of the Non-Interacting Surface. _Journal of Molecular Biology_, 14, 2632–2652 (2014). ([10.1016/j.jmb.2014.04.017](https://doi.org/10.1016/j.jmb.2014.04.017))\n\n## Contact\n\nFor questions about PRODIGY usage, please reach out the team at [ask.bioexcel.eu](https://ask.bioexcel.eu/)\n\n## Information about dependencies\n\nThe scripts rely on [Biopython](www.biopython.org) to validate the PDB structures and calculate\ninteratomic distances. [freesasa](https://github.com/mittinatten/freesasa), with the parameter\nset used in NACCESS ([Chothia, 1976](http://www.ncbi.nlm.nih.gov/pubmed/994183)), is also\nrequired for calculating the buried surface area.\n\n**DISCLAIMER**: given the different software to calculate solvent accessiblity, predicted\nvalues might differ (very slightly) from those published in the reference implementations.\nThe correlation of the actual atomic accessibilities is over 0.99, so we expect these\ndifferences to be very minor.\n\n---\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaddocking%2Fprodigy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhaddocking%2Fprodigy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaddocking%2Fprodigy/lists"}