Getting Started#
Quick start
Install and run ProDock
Create an isolated environment, then install ProDock with Conda, Pip, or Source.
Conda ยท easiest
Pip ยท PyPI
Source ยท editable
Env first
1
๐งช Create env
Fresh conda environment
โ
2
๐ฆ Install
Conda, Pip, or Source
โ
3
๐ Run
prodock(...)
Installation#
โ
Conda
Recommended.
conda create -n prodock python=3.11
conda activate prodock
conda install -c tieulongphan prodock
Use: quickest install
Py
Pip
Install dependencies first.
conda create -n prodock python=3.11
conda activate prodock
conda install -c conda-forge openmm=8.3.1 pdbfixer
pip install prodock
Use: PyPI install
Git
Source
Editable install.
git clone https://github.com/Medicine-Artificial-Intelligence/ProDock
cd ProDock
conda env create -f prodock-env.yml
Use: development
Quick example#
from prodock import prodock
PROJECT = "Demo"
RECEPTORS = [
{
"pdb_id": "4WKQ",
"receptor_name": "EGFR_4WKQ",
"ligand_code": "IRE",
"chains": ["A"],
"cofactors": [],
},
]
LIGANDS = [
{
"id": "erlotinib",
"smiles": "COCCOc1cc2c(ncnc2cc1OCCOC)Nc1cccc(c1)C#C",
},
{
"id": "gefitinib",
"smiles": "COc1cc2ncnc(c2cc1OCCCN1CCOCC1)Nc1ccc(c(c1)Cl)F",
},
]
result = prodock(
PROJECT,
receptors=RECEPTORS,
ligands=LIGANDS,
engines=["qvina", "qvina-w"],
extract_interaction=True,
db_name="test.db",
)
print(result.campaign_json)
print(result.db_path)
print(result.merged_df.head())
๐ Output paths
result.campaign_json is the path to the generated campaign config, and result.db_path is the path to the SQLite database.
๐ Output tables
result.merged_df stores pose-level rows such as receptor, ligand, engine, rank, affinity, and RDKit molecule objects and pose id for downstream analysis.