Skip to main content

DockCert

CI PyPI version Python versions License: MIT DOI

Automated Statistical Validation, Early Enrichment Metrics, and Reproducibility Assessment for Molecular Docking and Virtual Screening Studies.


Overview

DockCert is an open-source scientific toolkit engineered to evaluate whether a molecular docking or virtual screening protocol is rigorously validated before publication.

Instead of computing enrichment factors or pose RMSD across fragmented scripts, dockcert analyzes your screening results and docked structures in a single run:

  • 🎯 Redocking & Cross-Docking Pose Accuracy: Heavy-atom & symmetry-corrected RMSD (Hungarian algorithm).
  • 📈 Early Enrichment Quantification:
    • BEDROC ($\alpha=20.0, 80.5, 160.9$)
    • RIE (Robust Initial Enhancement)
    • EF1%, EF5%, EF10% (Enrichment Factors)
    • ROC-AUC & PR-AUC (Precision-Recall AUC)
    • logAUC & Optimal MCC (Matthews Correlation Coefficient)
  • 🎲 95% Stratified Bootstrap Confidence Intervals for every metric.
  • 🔬 Decoy Bias & Artificial Enrichment Audit: Kolmogorov-Smirnov & Wasserstein property tests (MW, LogP, HBD, HBA).
  • 🚦 Quality Certification Badges (PASS / WARNING / FAIL).
  • 📑 Publication Deliverables: Interactive self-contained report.html, vector plots (SVG/PDF/PNG 300 DPI), LaTeX summary tables (.tex), and a draft Methods & Supporting Information paragraph with automated BibTeX citations.
  • 🔌 Engine Agnostic: Works seamlessly with AutoDock Vina, Smina, GNINA, Schrödinger Glide, CCDC GOLD, DOCK, rDock, and generic CSV tables.
  Docking Results (.csv, .sdf, .pdbqt, logs)
                     │
                     ▼
  ┌───────────────────────────────────────────────────────────┐
  │                         DockCert                          │
  │  ├── Redocking RMSD (Symmetry corrected)                  │
  │  ├── Early Enrichment (BEDROC, RIE, EF1%, ROC-AUC)        │
  │  ├── Stratified 95% Bootstrap Confidence Intervals        │
  │  └── Decoy Bias Audit (MW, LogP KS-tests)                 │
  └───────────────────────────────────────────────────────────┘
                     │
                     ▼
  ┌───────────────────────────────────────────────────────────┐
  │                   Publication Deliverables                │
  │  ├── report.html (Interactive Dashboard & Badges)         │
  │  ├── dockcert_validation_overview.pdf/svg/png             │
  │  ├── dockcert_summary_table.tex / .csv                    │
  │  ├── methods_snippet.txt (Ready for Manuscript)           │
  │  └── citation.bib (BibTeX Reference)                      │
  └───────────────────────────────────────────────────────────┘

Installation

From PyPI

pip install dockcert

From Source

git clone https://github.com/sircalch/dockcert.git
cd dockcert
pip install -e .[dev]

Quickstart (CLI)

1. Run Demonstration Mode (Instant Benchmark Dataset)

dockcert demo -o my_docking_validation/

Open my_docking_validation/report.html in your browser!

2. Assess Virtual Screening CSV

dockcert assess -i screening_results.csv --score-col docking_score --label-col is_active -o validation_report/

3. Assess with Reference Ligand Pose RMSD

dockcert assess -i screening_results.csv --ref-ligand crystal_ligand.sdf --docked-pose docked_pose.sdf -o full_report/

Python API Usage

import numpy as np
from dockcert import assess_docking_quality
from dockcert.reporters import generate_docking_figures, generate_docking_manuscript_assets, generate_docking_html_report

# Screening scores (e.g. 50 actives, 1000 decoys)
labels = np.array([1]*50 + [0]*1000)
scores = np.concatenate([np.random.normal(-9.2, 0.8, 50), np.random.normal(-6.5, 1.1, 1000)])

# Assess quality
report = assess_docking_quality(
    labels=labels,
    scores=scores,
    rmsd_values=[1.42, 1.85, 2.30],
    lower_is_better=True
)

print(f"Overall Validation Status: {report.overall_status}")
print(f"ROC-AUC: {report.enrichment_metrics['roc_auc'].value:.3f}")
print(f"BEDROC (alpha=20.0): {report.enrichment_metrics['bedroc_20'].value:.3f}")
print(f"EF 1%: {report.enrichment_metrics['ef_1pct'].value:.1f}x")

# Export publication deliverables
generate_docking_figures(labels, scores, report, "output_dir/")
generate_docking_manuscript_assets(report, "output_dir/")
generate_docking_html_report(report, "output_dir/report.html")

Citation

If you use DockCert to evaluate molecular docking validation or virtual screening enrichment, please cite:

@software{monreal2026dockcert,
  author = {Monreal-Hern{\'a}ndez, Andre},
  title = {{DockCert: An Open-Source Toolkit for Statistical Validation, Enrichment Metrics, and Reproducibility Assessment of Molecular Docking Studies}},
  year = {2026},
  version = {1.0.0},
  publisher = {Zenodo},
  url = {https://github.com/sircalch/dockcert}
}

License

This project is licensed under the MIT License - see the LICENSE file for details.

Metadata

Release files for dockcert 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dockcert 1.1.0
File Size Uploaded Provenance
dockcert-1.1.0.tar.gz 36.7 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for dockcert 1.1.0
File Interpreter ABI Platform
dockcert-1.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 72.0 kB

Release files / dockcert-1.1.0.tar.gz

Download URL dockcert-1.1.0.tar.gz
Size 36.7 kB
Tags Source
SHA-256 checksum
How to use checksums
7ee4266b9493d67b4bef37579bf94c10dad7f6f050926598214d430e167fe79b
BLAKE2b-256 checksum
How to use checksums
a3464b390905f9ec6e5aece878a01b5fee2dde8be4e66c84dd54a20d266afb99
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / dockcert-1.1.0-py3-none-any.whl

Download URL dockcert-1.1.0-py3-none-any.whl
Size 35.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6ba66f098bef9b17761db72551dbe655615954d499c15fe5b74214dba5e4a774
BLAKE2b-256 checksum
How to use checksums
e6271054372744564895c6df7f67a9075324f0af2944dce6aa285c7246760b18
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Security for dockcert 1.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for dockcert-1.1.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.1.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page