Metadata-Version: 2.1
Name: openwfn
Version: 0.5.0
Summary: openWFN: lightweight wavefunction geometry analysis toolkit
Author: Muhammed Shah Shaji
License: MIT
Project-URL: Homepage, https://github.com/sha786muhammed/openWFN
Project-URL: Repository, https://github.com/sha786muhammed/openWFN
Project-URL: Issues, https://github.com/sha786muhammed/openWFN/issues
Keywords: computational chemistry,gaussian,geometry,molecular modeling,quantum chemistry,wavefunction
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Chemistry
Classifier: Topic :: Scientific/Engineering :: Physics
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy>=1.20.0
Provides-Extra: test
Requires-Dist: pytest; extra == "test"
Requires-Dist: pytest-cov; extra == "test"

# openWFN

[![PyPI version](https://img.shields.io/pypi/v/openwfn)](https://pypi.org/project/openwfn/)
[![Python versions](https://img.shields.io/pypi/pyversions/openwfn)](https://pypi.org/project/openwfn/)
[![License](https://img.shields.io/badge/license-MIT-green)](LICENSE)
[![Tests](https://github.com/sha786muhammed/openWFN/actions/workflows/tests.yml/badge.svg)](https://github.com/sha786muhammed/openWFN/actions/workflows/tests.yml)

```text
  ___   ____   _____  _   _ __        __ _____  _   _
 / _ \ |  _ \ | ____|| \ | |\ \      / /|  ___|| \ | |
| | | || |_) ||  _|  |  \| | \ \ /\ / / | |_   |  \| |
| |_| ||  __/ | |___ | |\  |  \ V  V /  |  _|  | |\  |
 \___/ |_|    |_____||_| \_|   \_/\_/   |_|    |_| \_|
```

openWFN is a lightweight command-line toolkit for molecular geometry analysis from Gaussian checkpoint data. It is designed for fast, script-friendly workflows around `.fchk` files.

## Installation

```bash
pip install openwfn
```

## Start

Run openWFN on a formatted checkpoint file:

```bash
openwfn molecule.fchk summary
openwfn molecule.fchk dist 1 2
openwfn molecule.fchk graph
openwfn molecule.fchk xyz molecule.xyz
openwfn molecule.fchk view
```

If no subcommand is provided:
- in a TTY terminal, `openwfn` starts interactive mode
- in non-interactive contexts, `openwfn` runs `summary`

Stable commands:
- `summary`
- `info`
- `dist i j`
- `angle i j k`
- `dihedral i j k l`
- `bonds`
- `graph`
- `xyz output.xyz`
- `view`

`view` exports a fully local HTML molecule viewer powered by bundled `3Dmol.js`.
It supports atom labels, style toggles, and built-in downloads for `XYZ`, `PDB`,
`SDF`, `PNG`, `JPEG`, and `SVG`.

## Example Sessions

```bash
openwfn examples/water/water.fchk summary
openwfn examples/water/water.fchk dist 2 1
openwfn examples/water/water.fchk angle 2 1 3
openwfn examples/methane/methane.fchk graph
openwfn examples/water/water.fchk view
openwfn examples/water/water.fchk
```

To save a standalone viewer file:

```bash
openwfn examples/water/water.fchk view --save viewer.html --no-open
```

## Release

Build and validate:

```bash
python -m build --no-isolation
python -m twine check dist/*
```

Upload to PyPI:

```bash
python -m twine upload dist/*
```

## License

MIT License. See [LICENSE](LICENSE).
