Skip to main content

GateWizard (API)

PyPI version Documentation DOI License: MIT GitHub stars

Python library for membrane protein preparation, system building, equilibration setup, and MD trajectory analysis.

This repository is the API only. It does not include a graphical interface.

If you want a desktop app, use gatewizard-gui, a separate project that calls this library. You can use the API without the GUI, and the GUI without cloning this repo (it installs the API via pip).

📖 Documentation · 💬 Discussions (API + GUI community forum)


Features

  • Preparation — clean structures, pKa (PROPKA), protonation, and termini capping
  • Membrane builder — orient protein, pack lipids and solvent, Amber parametrization (tleap)
  • Equilibration — CHARMM-GUI-style protocols for NAMD, GROMACS, and OpenMM (NVT, NPT, NPAT, NPγT)
  • Analysis — trajectory metrics, structural analysis, and plotting helpers
  • Force fields — Amber protein models (e.g. ff14SB, ff19SB) and common water/lipid setups

Install

conda create -n gatewizard -c conda-forge python sqlite ambertools=24 parmed=4.3.0 openmm cudatoolkit -y
conda activate gatewizard
pip install "gatewizard[full]"
pip install -r requirements-orientation.txt

MemPrO is installed from the MemPrO GitHub release (v0.1.0).

For optional extras without OpenMM (NAMD/GROMACS only):

pip install gatewizard

From source (includes openmm + cudatoolkit via conda):

git clone https://github.com/maurobedoya/gatewizard.git
cd gatewizard
conda env create -f environment.yml
conda activate gatewizard
pip install -e .

Check the version:

python -c "import gatewizard; print(gatewizard.__version__)"

Dependencies

GateWizard is split across two repositories (API + GUI). Below is the full dependency stack; subsections mark what this repo installs automatically.

Python — core (pip install gatewizard) · this repo

Installed automatically:

Package Role
Python ≥ 3.8 Runtime
NumPy Numerical arrays
Matplotlib Plots and analysis figures
MDAnalysis Trajectories and topologies
lipyphilic Membrane / lipid analysis
PROPKA pKa and protonation
RDKit Ligand 2D structures
Pillow Image I/O
psique Structure / sequence tools
requests HTTP helpers

Python — optional [full] · this repo

Package Role
ParmEd Topology conversion (GROMACS, etc.)
OpenMM Equilibration / MD (Python; use with conda cudatoolkit for GPU)
MemPrO Membrane orientation (GitHub)

Install: pip install "gatewizard[full]" then pip install -r requirements-orientation.txt for MemPrO.

Python — GUI backend · gatewizard-gui

Package Role
FastAPI Local HTTP API for the desktop app
Uvicorn ASGI server
gatewizard[full] This API (installed into the embedded runtime)

Conda (building + OpenMM GPU) · this repo via environment.yml; GUI embeds on Linux/WSL/macOS

Package Role
AmberTools 24 tleap, antechamber, packmol, pdb4amber, …
ParmEd 4.3.0 From conda-forge (AmberTools-compatible)
OpenMM ≥ 8.0 MD engine (Python)
cudatoolkit OpenMM CUDA platform (Linux/WSL + NVIDIA driver)

Desktop app · gatewizard-gui

Package Role
Electron Desktop shell
Node.js 20+ App and build runtime
Svelte 5 UI framework
Vite Frontend bundler
Tailwind CSS Styling
Three.js + Threlte 3D structure viewer
electron-updater In-app update checks

External MD engines (install separately · neither repo)

Tool Role
NAMD Run NAMD equilibration — namd3 / namd2 on PATH
GROMACS Run GROMACS equilibration — gmx on PATH (prefer conda-forge CPU gromacs; CUDA conda builds often hang next to OpenMM — see Installation)

OpenMM needs no separate binary — use openmm + cudatoolkit (conda) with gatewizard[full]. Auto-selects CUDA → OpenCL → CPU; override with PLATFORM=CUDA bash run_equilibration.sh.

python -c "import openmm; print([openmm.Platform.getPlatform(i).getName() for i in range(openmm.Platform.getNumPlatforms())])"

Provided by this repository

Component Included
gatewizard Python package (core + [full] extras) yes
environment.yml (AmberTools, OpenMM, cudatoolkit, …) yes
Desktop app (Electron, Svelte, viewer) no — gatewizard-gui
FastAPI backend no — GUI repo
NAMD / GROMACS binaries no — user install

Desktop GUI

gatewizard-gui — Electron app for the same workflow with a visual interface. It manages its own Python runtime and can update the API from the app. First-launch bootstrap installs CPU GROMACS by default (CUDA GROMACS is opt-in); details in Installation → Desktop GUI runtime.

Community and support

Need Where
Questions, workflows, methodology Discussions — central forum for API and GUI (use labels like api, gui, api:installation, gui:installation)
API bug or feature Issues in this repo
GUI bug or feature Issues in gatewizard-gui
Docs and troubleshooting Documentation

New to the project? Read the welcome post and say hello in the comments.

Download files

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

Source Distribution

gatewizard-1.0.52.tar.gz (341.4 kB view details)

Uploaded Source

Built Distribution

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

gatewizard-1.0.52-py3-none-any.whl (512.3 kB view details)

Uploaded Python 3

File details

Details for the file gatewizard-1.0.52.tar.gz.

File metadata

  • Download URL: gatewizard-1.0.52.tar.gz
  • Upload date:
  • Size: 341.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for gatewizard-1.0.52.tar.gz
Algorithm Hash digest
SHA256 a3b3eec90bdb09b0aecd5d6215e32b70bd156478cbcd2e2def7317bdaeb7709f
MD5 dc6186ebd853b7c7bc39e4f565458a16
BLAKE2b-256 26cf2a66c66cf8b04e22dd972345d5539db6b0b2ceae80392d4c9966433bea93

See more details on using hashes here.

File details

Details for the file gatewizard-1.0.52-py3-none-any.whl.

File metadata

  • Download URL: gatewizard-1.0.52-py3-none-any.whl
  • Upload date:
  • Size: 512.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for gatewizard-1.0.52-py3-none-any.whl
Algorithm Hash digest
SHA256 e2d25e810f8d3158212e10eda5caa1bf2db44a2d5e8cc4e9999b63e236d3208f
MD5 b30fa270c3c8bb9e3295369ac0f92bd1
BLAKE2b-256 5be4f93d1ad2f18b9e0215d8b82e66dc542430df67a037bf3bde069c508a28b5

See more details on using hashes here.

Release history Release notifications | RSS feed

1.0.53

2 files

This release

1.0.52 This release

2 files

1.0.51

2 files

1.0.50

2 files

1.0.49

2 files

1.0.48

2 files

1.0.47

2 files

1.0.46

2 files

1.0.45

2 files

1.0.44

2 files

1.0.43

2 files

1.0.42

2 files

1.0.41

2 files

1.0.40

2 files

1.0.39

2 files

1.0.37

2 files

1.0.36

2 files

1.0.34

2 files

1.0.33

2 files

1.0.32

2 files

1.0.31

2 files

1.0.30

2 files

1.0.29

2 files

1.0.28

2 files

1.0.26

2 files

1.0.25

2 files

1.0.24

2 files

1.0.23

2 files

1.0.22

2 files

1.0.20

2 files

1.0.19

2 files

1.0.18

2 files

1.0.17

2 files

1.0.16

2 files

1.0.15

2 files

1.0.14

2 files

1.0.13

2 files

1.0.12

2 files

1.0.6

2 files

1.0.5

2 files

1.0.4

2 files

1.0.3

2 files

1.0.2

2 files

1.0.1

2 files

1.0.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page