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.
Step-by-step lessons. Start here if you’re new.
Task-focused recipes. “How do I X?”
API, CLI, and environment variables.
Concepts and mental models.
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.