{"id":40685609,"url":"https://github.com/haddocking/haddock-runner","last_synced_at":"2026-01-21T10:43:31.178Z","repository":{"id":39704380,"uuid":"447592557","full_name":"haddocking/haddock-runner","owner":"haddocking","description":"Run large scale HADDOCK simulations using multiple input molecules in different scenarios","archived":false,"fork":false,"pushed_at":"2026-01-02T10:06:18.000Z","size":2152,"stargazers_count":6,"open_issues_count":0,"forks_count":2,"subscribers_count":7,"default_branch":"main","last_synced_at":"2026-01-08T10:17:07.707Z","etag":null,"topics":["benchmark","bioinformatics","haddock","high-performance-computing","large-scale","structural-biology","utrecht-university"],"latest_commit_sha":null,"homepage":"https://bonvinlab.org/haddock-runner","language":"Go","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":null,"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":"2022-01-13T12:33:20.000Z","updated_at":"2026-01-02T10:06:21.000Z","dependencies_parsed_at":"2023-02-12T22:31:23.154Z","dependency_job_id":"b4a2fdae-e906-425e-b202-fc6b5c53c382","html_url":"https://github.com/haddocking/haddock-runner","commit_stats":null,"previous_names":[],"tags_count":33,"template":false,"template_full_name":null,"purl":"pkg:github/haddocking/haddock-runner","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haddocking%2Fhaddock-runner","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haddocking%2Fhaddock-runner/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haddocking%2Fhaddock-runner/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haddocking%2Fhaddock-runner/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/haddocking","download_url":"https://codeload.github.com/haddocking/haddock-runner/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haddocking%2Fhaddock-runner/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28631955,"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":["benchmark","bioinformatics","haddock","high-performance-computing","large-scale","structural-biology","utrecht-university"],"created_at":"2026-01-21T10:43:30.529Z","updated_at":"2026-01-21T10:43:31.174Z","avatar_url":"https://github.com/haddocking.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# `haddock-runner` for [HADDOCK](https://www.bonvinlab.org/software)\n\n[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.13150820.svg)](https://doi.org/10.5281/zenodo.13150820)\n[![fair-software.eu](https://img.shields.io/badge/fair--software.eu-%E2%97%8F%20%20%E2%97%8F%20%20%E2%97%8B%20%20%E2%97%8F%20%20%E2%97%8F-yellow)](https://fair-software.eu)\n[![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n\n[![unittests](https://github.com/haddocking/haddock-runner/actions/workflows/unittests.yml/badge.svg)](https://github.com/haddocking/haddock-runner/actions/workflows/unittests.yml)\n[![Codacy Badge](https://app.codacy.com/project/badge/Coverage/ad6b3c5f52c64e66837d20aac0048c44)](https://www.codacy.com/gh/haddocking/haddock-runner/dashboard?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=haddocking/haddock-runner\u0026utm_campaign=Badge_Coverage)\n[![Codacy Badge](https://app.codacy.com/project/badge/Grade/ad6b3c5f52c64e66837d20aac0048c44)](https://www.codacy.com/gh/haddocking/haddock-runner/dashboard?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=haddocking/haddock-runner\u0026utm_campaign=Badge_Grade)\n\n## Table of contents\n\n1. [Introduction](#introduction)\n2. [Installation](#installation)\n3. [Usage](#usage)\n4. [Development](#development)\n\n---\n\n### [Introduction](#introduction)\n\n#### What is this repository for?\n\nThis repository contains a set of tools to benchmark the performance of **HADDOCK2.4**/**HADDOCK3.0**.\n\nThese can be used to compare the perfomance of HADDOCK against other software\npackages, to compare the performance of different versions of HADDOCK, or to\ncompare the performance of HADDOCK on different hardware.\n\nAdditionally it can be used to perform large-scale docking experiments in\ndifferent scenarios (parameters), for example:\n\n- You have obtained experimental data for a set of proteins and you want to\n  dock them against a set of targets. You want to test different parameters\n  to see which one gives the best results.\n  - Scenario 1: Use all information\n  - Scenario 2: Use only 50% of the information\n  - Scenario 3: _ab initio_ docking (without information)\n\n#### How do I get set up?\n\n**To run the benchmarking tools, you need to have a working (local)\ninstallation of HADDOCK2.4.** The software is free for academic use and can be\nobtained via [registration](https://www.bonvinlab.org/software/haddock2.4/download/).\nMore information can be obtained from the [HADDOCK website](https://www.bonvinlab.org/software/haddock2.4/).\n\nFor more information on how to install HADDOCK, please refer to the\n[documentation](https://www.bonvinlab.org/software/haddock2.4/installation/)\nand also to the [HADDOCK.md](HADDOCK.md) file in this repository.\n\n#### Previous version\n\n\"Hey, what happened to the previous version of this repository? Where is the\npython code?!\" - you might ask.\n\nThe previous vesion of this repository was indeed written in Python but have been\nmigrated to Go. The main reason for this is that the python version was slow, not\nvery efficient (or well designed) also it had no tests...! The Go version is faster,\nefficient and easier to maintain - see the code coverage.\n\nHowever you can still find the Python version as the v0.2.1 tag in this\nrepository [HERE](https://github.com/haddocking/haddock-runner/tree/v0.2.1).\n\n### [Installation](#installation)\n\n#### Requirements\n\n- [Go 1.19](https://go.dev/doc/install) or higher\n\n#### Installation\n\nClone the repository\n\n```bash\ngit clone https://github.com/haddocking/haddock-runner.git\ncd haddock-runner\ngo build -o haddock-runner\n./haddock-runner -version\n```\n\nOR\n\nUse the pre-compiled binaries from the latest release\n\n- [haddocking/haddock-runner/releases/latest](https://github.com/haddocking/haddock-runner/releases/latest)\n\n#### Usage\n\n**Check the step-by-step tutorial at [bonvinlab.org/education/haddock-runner](https://www.bonvinlab.org/education/haddock-runner/)**\n\n```bash\nUsage: haddock-runner [options] \u003cinput file\u003e\n\nRun HADDOCK on a dataset of complexes\n\nOptions:\n  -version: Print version and exit\n  -setup: Only perform the setup, do not execute the benchmark\n```\n\n- `input.yml`\n\nThe input of `haddock-runner` is a `.yml` file; YAML is a human-readable\ndata-serialization language. It is commonly used for configuration files and\nin applications where data is being stored or transmitted. For more information,\nplease refer to the [YAML website](https://yaml.org/).\n\nCurrently `haddock-runner` can be executed for both the production-stable version\n2.4 and the experimental 3.0.0-beta2. The input file is slightly different for\neach version. The input file for version 2.4 is described below.\n\nThe input file for version 3.0.0-beta2 is described [HERE](HADDOCK3.md).\n\nAn example file is provided in the `examples` folder (`example_input.yml`) and\nalso below. Its composed of two main sections, `general` which defines the\ngeneral parameters of the benchmarking experiment, and `scenarios` which defines\nthe different scenarios to be tested.\n\n```yaml\n# General parameters\ngeneral:\n  # Location of the HADDOCK script (see more below)\n  executable: /trinity/login/rodrigo/projects/benchmarking/haddock24.sh\n  # How many jobs should be executed at a given time\n  max_concurrent: 2\n  # Location where HADDOCK is installed\n  haddock_dir: /trinity/login/abonvin/haddock_git/haddock2.4\n  # Pattern used to identify the receptor files\n  receptor_suffix: _r_u\n  # Pattern used to identify the ligand files\n  ligand_suffix: _l_u\n  # Location of the input list\n  input_list: /trinity/login/rodrigo/projects/benchmarking/input.txt\n  # Location of the benchmark output\n  work_dir: /trinity/login/rodrigo/projects/benchmarking\n\n# Scenarios of the benchmarking experiment\nscenarios:\n  # Name can be anything you want to identify the scenario\n  - name: true-interface\n    # Parameters to be used in the scenario\n    parameters:\n      # The parameters below are the same as the\n      #  ones used in the HADDOCK input file `run.cns`\n      run_cns:\n        noecv: false\n        structures_0: 2\n        structures_1: 2\n        waterrefine: 2\n      # Patterns used to identify the restraints files\n      restraints:\n        ambig: ti\n        unambig: unambig\n        hbonds: hb\n      # Patterns used to identify the custom topology files\n      custom_toppar:\n        topology: _ligand.top\n        param: _ligand.param\n\n  - name: center-of-mass\n    parameters:\n      run_cns:\n        cmrest: true\n        structures_0: 2\n        structures_1: 2\n        waterrefine: 2\n```\n\n- `haddock24.sh`\n\nThe `haddock24.sh` script is a wrapper around the HADDOCK2.4 executable.\nIt is used to run HADDOCK in a given folder, and it is called by\n`haddock-runner` for each scenario. The script is provided in the\n`examples` folder (`haddock24.sh`) and also below.\n\n**Important: Keep in mind that HADDOCK2.4 runs on Python2.7,\nwhich is likely not present in recent systems. For tips on how\nto install it, please refer to the [PYTHON2.md](PYTHON2.md)\nfile in this repository.**\n\n```bash\n#!/bin/bash\n#===============================================================\n# HADDOCK2.4 wrapper script\n#===============================================================\n\n# Export the required environment variables\nexport HADDOCK=\"/trinity/login/abonvin/haddock_git/haddock2.4\"\nexport HADDOCKTOOLS=\"$HADDOCK/tools\"\nexport PYTHONPATH=\"${PYTHONPATH}:$HADDOCK\"\n\n# Command to run HADDOCK\n$(which python2.7) $HADDOCK/Haddock/RunHaddock.py\n#===============================================================\n```\n\n- `input_list.txt`\n\nThe input file is a list of the input files to be used in the\nbenchmarking experiment.This is a simple text file with one\nline per input. Each line contains the path to one of the input\nfiles. The input files must be:\n\n- `.pdb`: for receptor and ligand files\n- `.top`: for custom topology files (used for small-molecules)\n- `.param` : for custom parameter files (used for small-molecules)\n- `.tbl`: a table file containing the restraints to be used in the docking experiment\n\nThis list is parsed by `haddock-runner` and are identified according to the patterns\nset in `input.yml`. Lines begining with `#` are ignored and can be used to document\nthe input list for future reference - in-line comments are not supported.\n\nAn example file is provided in the `examples` folder (`example_input_list.txt`)\nand also below.\n\n```text\n#  Lines starting with # are comments\n# ------------------------------------------------------------ #\n# Input list\n# ------------------------------------------------------------ #\n# 1A2K\nexample/1A2K/1A2K_r_u.pdb\nexample/1A2K/1A2K_l_u.pdb\nexample/1A2K/1A2K_ligand.top\nexample/1A2K/1A2K_ligand.param\nexample/1A2K/1A2K_ti.tbl\nexample/1A2K/1A2K_unambig.tbl\n# 1GGR\nexample/1GGR/1GGR_r_u.pdb\nexample/1GGR/1GGR_l_u_1.pdb\nexample/1GGR/1GGR_l_u_2.pdb\nexample/1GGR/1GGR_l_u_3.pdb\nexample/1GGR/1GGR_l_u_4.pdb\nexample/1GGR/1GGR_l_u_5.pdb\nexample/1GGR/1GGR_ti.tbl\n# 1PPE\nexample/1PPE/1PPE_l_u.pdb\nexample/1PPE/1PPE_r_u.pdb\nexample/1PPE/1PPE_ti.tbl\nexample/1PPE/1PPE_hb.tbl\nexample/1PPE/1PPE_unambig.tbl\n# 2OOB\nexample/2OOB/2OOB_l_u.pdb\nexample/2OOB/2OOB_r_u.pdb\nexample/2OOB/2OOB_ti.tbl\nexample/2OOB/2OOB_hb.tbl\n# ------------------------------------------------------------ #\n```\n\n**Ensembles**: multiple conformations of a receptor or ligand are also supported,\nthey need to follow the naming convention: `\u003croot\u003e_\u003cligand|receptor suffix\u003e_N.pdb`,\nwhere `N` is the ensemble number. For example, if the ligand suffix is `_l_u`,\nthe ligand files for the first ensemble would be:\n\n```text\n\u003croot\u003e_l_u_1.pdb\n\u003croot\u003e_l_u_2.pdb\n\u003croot\u003e_l_u_3.pdb\n```\n\n**Important: Do not provide a multi-model ensemble file,\ninstead provide the individual models.**\n\n#### [Development](#development)\n\npending\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaddocking%2Fhaddock-runner","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhaddocking%2Fhaddock-runner","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaddocking%2Fhaddock-runner/lists"}