ChemEx is an advanced, open-source software specifically designed for analyzing NMR experimental data to characterize chemical exchange processes. Ideal for researchers and scientists in the field of biochemistry and molecular biology, ChemEx aids in the analysis of NMR experiments like Carr-Purcell-Meiboom-Gill (CPMG) relaxation dispersion and Chemical Exchange Saturation Transfer (CEST).
Before installing ChemEx, ensure you have Python 3.13 installed on your system.
Note: ChemEx requires Python 3.13. Python 3.14 was recently released and is being tested for compatibility, but Python 3.13 is recommended for production use until the scientific Python ecosystem fully adopts 3.14.
ChemEx offers several installation methods to suit your specific setup:
uv is a fast Python package and project manager. If you don't have it installed:
# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"The fastest way to try ChemEx without installation:
uvx chemex --helpOr install it as a tool:
uv tool install chemex
chemex --helpCreate an isolated environment and install ChemEx:
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
pip install chemexpip install chemexpip install git+https://github.com/gbouvignies/ChemEx.gitIf you prefer conda/mamba:
conda create -n chemex python=3.13
conda activate chemex
conda config --env --add channels conda-forge
conda install chemexChemEx performance depends on the underlying numerical libraries (NumPy and SciPy). The default installation provides good performance for most users:
- pip (PyPI wheels): Uses OpenBLAS on Linux/Windows, or Apple's Accelerate framework on macOS
- conda-forge: Uses OpenBLAS as the BLAS/LAPACK backend
- Anaconda (defaults channel): Uses Intel® MKL, which can provide better performance for some operations
- Intel® Distribution for Python: Also uses Intel® MKL
For most use cases, the default pip or conda-forge installation is sufficient. If you need maximum performance and are doing intensive numerical computations, consider using Anaconda's defaults channel or Intel's Python distribution.
We encourage contributions from the community. Please see our CONTRIBUTING.md for guidelines on how to make ChemEx better. For any issues or suggestions, please open an issue or a discussion on our GitHub repository.
For additional support, tutorials, and detailed documentation, visit the ChemEx Documentation.
ChemEx is licensed under the GPL-3.0. See the LICENSE file for more details.
Developed with ❤️ by the ChemEx Contributors