Skip to main content

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

Project description

zendock

Open demo in Colab

zendock is a focused Python package for the molecular docking workflow sketched in notebooks/zendock_colab_demo.ipynb.

This package provides the stack needed to perform molecular docking for scientific use, prioritizing access and ease of use.

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

Demo

Try the interactive Google Colab notebook:

Open the Zendock demo in Colab

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 is 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.

After run_docking(), cached results can be inspected as a Polars table:

results = runner.display_docking_results(ligand_name="ligand")
# Columns: pose, binding energy, lRMSD, uRMSD

Interaction outputs are generated from saved docking results. Export methods return paths, while display helpers render the generated files in notebooks (or print a fallback in non-notebook environments):

runner.display_2d_interaction_map(ligand_name="ligand")
runner.display_3d_interaction_map(ligand_name="ligand")
runner.display_interaction_table(ligand_name="ligand")

The equivalent export methods are export_2d_interaction_diagram, export_3d_interaction_diagram, and export_interaction_table.

Notes

  • Polars is used for tabular docking-result display.
  • 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.2.4.tar.gz (95.3 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.2.4-py3-none-any.whl (22.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: zendock-0.2.4.tar.gz
  • Upload date:
  • Size: 95.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","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.2.4.tar.gz
Algorithm Hash digest
SHA256 58f5ea8fba3b6c400ab1ead1f482a88c586fd6b25eb2b0e384e1c2383a314045
MD5 b16cd32c6e05e693bfacd84eab389663
BLAKE2b-256 b974353b52f8156e4828bc70697cd15043e8ced8e4667f4c60add7ca23ba26e8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: zendock-0.2.4-py3-none-any.whl
  • Upload date:
  • Size: 22.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","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.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 964d2555e507cb9a1a059394e65904ebdc4260e5f92d427e72456dd114d3d5c5
MD5 b82bae03d5735ff163b371468fb46651
BLAKE2b-256 abb172293c5aad4ef35da7024ae29b22dac44eb0ac1efbd0e7ab879dbddaf4a0

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