Skip to main content

FastMDXplora

Fully Automated SysTem for Molecular Dynamics eXploration

DOI PyPI version Python versions License: MIT Tests codecov


FastMDXplora explores a protein's behavior end to end from a single command. Given a structure (or just a PDB ID) it performs molecular dynamics exploration all the way through setup, simulation, analysis, and reporting, then hands back publication-ready results.

  setup  →  simulation  →  analysis  →  report

Highlights

  • Explore a protein's full dynamics with a single command, covering setup, simulation, analysis, and reporting
  • Build a protein-ligand system from a PDB identifier alone: the ligand is identified, its chemistry retrieved, and its protonation settled in the binding site, with a refusal rather than a guess where the structure is ambiguous
  • Find out what holds a ligand in place, not just how much of the protein it touches: hydrogen bonds, hydrophobic contacts, salt bridges, pi-stacking, pi-cation, halogen bonds, metal coordination and water bridges, each against a published criterion
  • Read an occupancy that says how much watching it rests on: a contact present in 450 consecutive frames and one present in 450 alternating frames are both fifty per cent, and only the second has an error bar
  • Reach beyond plain MD with built-in PLUMED enhanced sampling (metadynamics, umbrella sampling, steered MD)
  • Design, start, watch, and review an exploration from a browser, with a 3D viewer and live telemetry
  • Analyse a trajectory you already have, from any engine, without running the simulation again
  • Build a config in the browser and run it there, or take it to a cluster — the same file either way
  • Scale from a quick single-protein exploration to large parallel campaigns, driven the same way from the CLI or the Python API

Phases of FastMDXplora

Phase What it does
setup Cleans up your structure and builds a simulation-ready system: fixes missing atoms, adds hydrogens, solvates, and adds ions. Decides what each non-standard residue means — a bound ligand is parameterized, a cryoprotectant discarded, a coordinated metal kept — and stops where the structure does not say.
simulation Runs the molecular dynamics (energy minimization, equilibration, and production), with optional enhanced sampling.
analysis Computes the standard structural and dynamic metrics (and protein-ligand metrics when a ligand is present), with figures ready to use.
report Packages everything into a written report (Markdown and PDF), a slide deck, a browser dashboard, and a self-contained bundle you can share. The report includes a methods paragraph written against the reporting checklists journals apply, and a convergence assessment that says what the run can and cannot support.

Install

From conda-forge, which brings every backend with it:

conda create -n fastmdxplora -c conda-forge fastmdxplora
conda activate fastmdxplora

This is the recommended route. OpenMM, PDBFixer, OpenFF, RDKit, and PROPKA are conda-forge packages, and the ligand path needs all of them; installing them any other way is more work for the same result.

From PyPI, if you already manage those yourself or only need part of the pipeline:

pip install fastmdxplora            # analysis and reporting
pip install "fastmdxplora[md]"      # adds setup and simulation
pip install "fastmdxplora[ligand]"  # adds most of protein-ligand preparation
pip install "fastmdxplora[pdf]"     # adds the PDF report

Two of those are partial from PyPI, which is why conda-forge is the recommendation rather than a preference.

The ligand path also needs the OpenFF toolkit, which has no PyPI distribution at all — it is a conda-forge package, so no pip command reaches it:

conda install -c conda-forge openff-toolkit openmmforcefields

The pdf extra needs Pango and Cairo present as system libraries. The conda-forge package brings its own; from PyPI they have to be installed separately. Where they are missing the run says so and writes the other formats rather than failing.

Run fastmdx info afterwards to see which backends were found.

Working on FastMDXplora itself, Windows and WSL2, and troubleshooting a partial install are covered in the installation guide.

Quick start

fastmdx explore --system 1L2Y      # a full exploration, from a PDB ID
fastmdx gui                        # design, start, and watch one in a browser
fastmdx info                       # what is installed and which backends are present

From Python:

import fastmdxplora as fastmdx

runs = fastmdx.FastMDXplora(system="1L2Y", output_dir="trpcage").explore()
print(runs[0].output_dir)

For anything beyond a quick run, capture the whole exploration in a YAML file. fastmdx init-config writes a commented template, and the same file drives both the CLI and the Python API:

fastmdx explore --config study.yml

Parameter sweeps, multi-system campaigns, cross-run comparison, parallel execution, and the full flag list are covered in the usage examples and the CLI reference.

Outputs by phase

Each phase writes to its own subdirectory under the output root, with a parameters manifest so every artifact is traceable to the options that produced it.

Phase Key outputs
setup prepared.pdb, solvated.pdb, setup_parameters.json
simulation production.dcd, topology.pdb, simulation_parameters.json
analysis <analysis>/*.dat, <analysis>/*.png, analysis_manifest.json
report report.md, report.pdf, dashboard.html, slides.pptx, project_bundle.zip

Documentation

Full documentation is at fastmdxplora.readthedocs.io:

Citation

If you use FastMDXplora in your work, please cite:

Aina, A.; Kwan, D. FastMDAnalysis: Software for Automated Analysis of Molecular Dynamics Trajectories. J. Comput. Chem. 2026, 47, e70350. DOI: 10.1002/jcc.70350

@article{aina2026fastmd,
  author  = {Aina, Adekunle and Kwan, Derrick},
  title   = {FastMDAnalysis: Software for Automated Analysis of Molecular Dynamics Trajectories},
  journal = {Journal of Computational Chemistry},
  volume  = {47},
  number  = {8},
  pages   = {e70350},
  year    = {2026},
  doi     = {10.1002/jcc.70350},
}

Contributing

Contributions are welcome. See CONTRIBUTING.md. FastMDXplora follows the Contributor Covenant.

License

MIT. See LICENSE.

Acknowledgements

FastMDXplora is developed in the AAI Research Lab at California State University Dominguez Hills. It builds on a deep ecosystem of open-source scientific Python: MDTraj, OpenMM, PDBFixer, NumPy, SciPy, scikit-learn, Matplotlib, python-pptx, and many others.

Download files

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

Source Distribution

fastmdxplora-2.3.0.tar.gz (837.0 kB view details)

Uploaded Source

Built Distribution

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

fastmdxplora-2.3.0-py3-none-any.whl (592.2 kB view details)

Uploaded Python 3

File details

Details for the file fastmdxplora-2.3.0.tar.gz.

File metadata

  • Download URL: fastmdxplora-2.3.0.tar.gz
  • Upload date:
  • Size: 837.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for fastmdxplora-2.3.0.tar.gz
Algorithm Hash digest
SHA256 8e05f86e89da2c76775a8f5101365b1c4d44841297d689fb484ea7326c0a2df5
MD5 93533b9de440568df83b26d750d0aae5
BLAKE2b-256 6995f0ed069f50de4b5babbca4621aab8f9a07b4f8a7eb43e9f000b28e224e50

See more details on using hashes here.

Provenance

The following attestation bundles were made for fastmdxplora-2.3.0.tar.gz:

Publisher: publish.yml on aai-research-lab/FastMDXplora

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fastmdxplora-2.3.0-py3-none-any.whl.

File metadata

  • Download URL: fastmdxplora-2.3.0-py3-none-any.whl
  • Upload date:
  • Size: 592.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for fastmdxplora-2.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8a145bd07fba928a6d1392263222cba8446ca1008882ea915884bd6559a8ce51
MD5 11434d5ae3717f736297f318cf7580c0
BLAKE2b-256 fadd45dff71f6103e220b12451a3da72a15e17d1a1073b39c07e3f7b8068d8d4

See more details on using hashes here.

Provenance

The following attestation bundles were made for fastmdxplora-2.3.0-py3-none-any.whl:

Publisher: publish.yml on aai-research-lab/FastMDXplora

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

2.5.5

2 files

2.5.4

2 files

2.5.3

2 files

2.5.2

2 files

2.5.1

2 files

2.5.0

2 files

2.4.0

2 files

This release

2.3.0 This release

2 files

2.2.0

2 files

2.1.0

2 files

2.0.0

2 files

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