Skip to main content

a focused Python package for molecular preparation, docking simulation, visualization, and analysis workflows

Project description

zendock

zendock is a focused Python package for the molecular docking workflow sketched in Docking.ipynb.

This package aims to provede the entire stack needed to perform molecular docking for scientific use, sacrificing performance and flexibility for access and ease of use.

The base package keeps imports lightweight. Install extras for ligand/receptor preparation, docking, and visualization workflows.

Philosophy

  • Lightweight import by default, optional extras for full workflows
  • Notebook prototype, package implementation
  • uv for development
  • pip works for end users

Install

Users

Install from PyPI with regular pip:

pip install zendock

Install the complete workflow stack with:

pip install "zendock[all]"

Targeted extras are also available:

pip install "zendock[prep]"  # ligand/receptor preparation
pip install "zendock[dock]"  # Vina docking
pip install "zendock[viz]"   # 3D/interaction visualization

Development with uv

Create an environment and install the package in editable mode:

uv venv
source .venv/bin/activate
uv pip install -e ".[all]"

Install developer tools too:

uv pip install -e ".[dev]"

Development Workflow

Typical loop:

uv venv
source .venv/bin/activate
uv pip install -e ".[all,dev]"
pytest
python -m build

Project Layout

src/zendock/
  __init__.py
  docking.py
  exceptions.py
  fetching.py
  ligand.py
  models.py
  receptor.py
  result_store.py
  results.py
  tools.py
  utils.py
  workspace.py
tests/
Docking.ipynb
pyproject.toml

Current Public API

from zendock import DockingRunner, Ligand, OutputLayout, Receptor

DockingRunner remains the notebook-friendly facade. New code can pass an OutputLayout to centralize output directories and use the typed result objects cached on runner.last_result after docking.

Visualization Example

from zendock import DockingRunner, Ligand, Receptor

receptor = Receptor(name="egfr", pdb_id="1M17")
# Prepare the receptor, add at least one prepared ligand, and set up Vina first.
runner = DockingRunner(receptor)

runner.run_docking()
runner.export_2d_interaction_diagram("ligand_a")
runner.export_3d_interaction_diagram("ligand_a", pose_index=0)

Notes

  • The package is licensed under MIT.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zendock-0.1.1.tar.gz (950.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

zendock-0.1.1-py3-none-any.whl (21.4 kB view details)

Uploaded Python 3

File details

Details for the file zendock-0.1.1.tar.gz.

File metadata

  • Download URL: zendock-0.1.1.tar.gz
  • Upload date:
  • Size: 950.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Arch Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for zendock-0.1.1.tar.gz
Algorithm Hash digest
SHA256 6d4cd48845b99534a5d6f54250c352876c4a854da2a0ad50ebe2fc5253ec391d
MD5 839b78a5e3d08f00da943de9bd29d0c1
BLAKE2b-256 cc849c5e5f41d2b50bb7e46fcf602f0049edc4a7075f4dd8cb7d8bcd9358e365

See more details on using hashes here.

File details

Details for the file zendock-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: zendock-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 21.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Arch Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for zendock-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1ad84ace490efe9cebb1d7905e0cbdac98faf1625445af7951dd167d3462b995
MD5 f35d6191b938e416045b69f7166a5e01
BLAKE2b-256 7afdd8bdc476da3d606e7014e506e3f2ae92cc3045560eb73d92a660b33a759d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page