PyHDX
Derive ΔG for single residues from HDX-MS data
Install / Use
/learn @Jhsmit/PyHDXREADME
PyHDX
PyHDX is python project which can be used to derive Gibbs free energy from HDX-MS data.
Installation
Installation of PyHDX with uv:
Create a uv virtual environment, specifying python version 3.11:
$ uv venv -p "3.11"
Then activate environment as instructed by uv, e.g.:
Windows:
$ .venv/Script/activate
Linux/Mac:
$ source .venv/bin/activate
To install PyHDX:
$ uv pip install pyhdx
With web interface extra:
$ uv pip install pyhdx[web]
(Not recommended - outdated version) Conda install (includes web interface extra):
$ conda install pyhdx
Run PyHDX
Most up-to-date code examples are in the directory pyhdx/templates
To run the web server:
$ pyhdx serve
To add datasets to directly load into PyHDX, configure the database_dir parameter in the config file (default: ~/.hdxms_datasets/datasets), and place hdxms-datasets v0.1.5 (legacy) compatible datasets there.
Please refer to the docs for more details on how to run PyHDX.
Web Application
The PyHDX web application is currently hosted at: http://pyhdx.jhsmit.org
A test file can be downloaded from here and here (right click, save as).
A beta version might be available at: http://pyhdx-beta.jhsmit.org
Publication
Our Analytical Chemistry Publication describing PyHDX can be found here
The latest version (v2) of our biorxiv paper: https://doi.org/10.1101/2020.09.30.320887
Python code for analysis and generation the figures in the paper are here: https://github.com/Jhsmit/PyHDX-paper
Other
HDX MS datasets repository and format: https://github.com/Jhsmit/HDX-MS-datasets
HDXMS datasets python bindings: https://github.com/Jhsmit/hdxms-datasets
Development
Building PyHDX from source:
$ hatch build
Create a new release and distribute to PyPI:
- Create new release on GitHub
- GitHub workflow builds and publishes to PyPI
Panel web interface development
Working on a controller only:
panel serve pyhdx\web\controller_only.py --dev
Working on the main app:
panel serve pyhdx\web\apps\_main.py --dev
Make sure to also run a dask cluster if needed:
python pyhdx\local_cluster.py
Other
Installing a specific commit of the HDX-MS-datasets package:

