PlayMolecule#

PlayMolecule is a Python API for running Acellera’s containerized drug-discovery apps. You install one Python package, point it at a registry of apps (a Docker registry, an HTTP backend, or a local install), and call each app as a normal Python function. Each call produces a self-contained ExecutableDirectory you can run() locally, submit to SLURM, or execute on a remote PlayMolecule HTTP backend.

Important

The playmolecule Python client (this package) is freely available, but the apps it runs (ProteinPrepare, DeepSite, Parameterize, and the rest) are commercial products that require an Acellera licence. Contact Acellera to book a demo and obtain a quote tailored to your needs. See Licensing for details.

🎓 Tutorials

Step-by-step lessons. Start here if you’re new.

Tutorials
🛠 How-to guides

Task-focused recipes. “How do I X?”

How-to guides
📖 Reference

API, CLI, and environment variables.

Reference
💡 Explanation

Concepts and mental models.

Explanation

Installation#

pip install playmolecule

See Installation for the rest of the setup (registry credentials, container runtime). Cluster administrators rolling out PlayMolecule for a multi-user site should read Install apps for a cluster.

Quick start#

from playmolecule import describe_apps
from playmolecule.apps import proteinprepare

describe_apps()                                      # list what's available
ed = proteinprepare(outdir="out", pdbid="3ptb")      # build an ExecutableDirectory
ed.run()                                             # execute locally
print(ed.status)                                     # JobStatus.COMPLETED

The same ed can be submitted to SLURM instead:

ed = proteinprepare(outdir="out", pdbid="3ptb")
ed.run(queue="slurm", partition="normalCPU", ncpu=1, ngpu=0)

Citing#

If you use PlayMolecule in published work, please cite Acellera. See https://www.acellera.com/playmolecule.