Metadata-Version: 2.4
Name: gmx-top4py
Version: 0.1.1
Summary: A Python library to parse GROMACS topology files and alter associated force fields parameters.
Author-email: graeter-group <ak-graeter@mpip-mainz.mpg.de>
Keywords: GROMACS,topology
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: OS Independent
Requires-Python: <3.15,>=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy
Provides-Extra: dev
Requires-Dist: pytest; extra == "dev"
Requires-Dist: pytest-cov; extra == "dev"
Requires-Dist: pytest-mock; extra == "dev"
Requires-Dist: tox; extra == "dev"
Requires-Dist: tox-uv; extra == "dev"
Requires-Dist: black; extra == "dev"
Requires-Dist: hypothesis; extra == "dev"
Requires-Dist: jupyter; extra == "dev"
Requires-Dist: griffe<1.0.0,>=0.33; extra == "dev"
Requires-Dist: pycallgraph2; extra == "dev"
Requires-Dist: certifi>=2025.6; extra == "dev"
Requires-Dist: jsonschema>=4.24; extra == "dev"
Requires-Dist: jsonschema-specifications>=2025.4; extra == "dev"
Requires-Dist: markdown-it-py>=3.0; extra == "dev"
Requires-Dist: pytz>=2025.2; extra == "dev"
Requires-Dist: referencing>=0.36; extra == "dev"
Requires-Dist: rich>=14.0; extra == "dev"
Requires-Dist: rpds-py>=0.26; extra == "dev"
Requires-Dist: six>=1.17; extra == "dev"
Requires-Dist: typing-extensions>=4.14; extra == "dev"
Requires-Dist: tzdata>=2025.2; extra == "dev"
Requires-Dist: watchdog>=6.0; extra == "dev"
Requires-Dist: zipp>=3.23; extra == "dev"
Dynamic: license-file

# gmx-top4py 

<p align="left">
<a href="https://github.com/psf/black"><img alt="Code style: black" src="https://img.shields.io/badge/code%20style-black-000000.svg"></a>
</p>

GROMACS topology files for python

## Description
The package gmx-top4py provides an python interface to
* read and write toplogy and force field information from GROMACS-type top-files
* alter force field parameters 

## Tutorials
The following tutorials are avaiable as Google Colab notebooks and hence do not require a local installation:
* [Basic tutorial](https://colab.research.google.com/drive/19zjIw2H5O6InLDQWLXEvrwrZ5w0AL7i1?usp=sharing) - Basic accessing of topology information with gmx-top4py
* [Advanced tutorial](https://colab.research.google.com/drive/1uWgji2O1N4PnxnYpGc1yV68Qzm-PfVX1?usp=sharing) - Advanded accessing of topology information with gmx-top4py
* [Force field parameter tutorial](https://colab.research.google.com/drive/1YOPPkCDudqSwd2QV0P7qEcd-1bogrvtY?usp=sharing) - Adapting force field parameters with gmx-top4py

## Installation
### From PyPI
```bash
pip install gmx-top4py
```

### From TestPyPI
```bash
pip install --index-url https://test.pypi.org/simple --extra-index-url https://pypi.org/simple gmx-top4py
```
### From source via uv
Clone repository and move into
```bash
git clone git@github.com:graeter-group/gmx-top4py.git
cd gmx-top4py
```
Install repository
```bash
uv sync
```
Activate virtual environment
```bash
source .venv/bin/activate
```
Verify install by running the tests
```bash
pytest tests
```
