Metadata-Version: 2.4
Name: xommons
Version: 0.1.0
Summary: Synchrotron data analysis utilities and command-line macros.
Requires-Python: >=3.11
Requires-Dist: h5py>=3.15.1
Requires-Dist: matplotlib>=3.10.7
Requires-Dist: numpy>=2.3.4
Requires-Dist: scipy>=1.16.3
Requires-Dist: tifffile>=2025.10.16
Requires-Dist: tqdm>=4.67.1
Provides-Extra: unwrap-phase
Requires-Dist: ptychi>=1.3.0; extra == 'unwrap-phase'
Requires-Dist: torch>=2.9.0; extra == 'unwrap-phase'
Description-Content-Type: text/markdown

*Xommons* is a collection of convenient tools for synchrotron data examination, assessment and analysis. It offers a range of utility functions that can be integrated into your workflow as well as a uv-managed command-line toolbox. For example:

```bash
xommons showptychodus ptychodus_para.hdf5 probe
```
will display the probes in a Ptychodus parameter HDF5 file.

## Installation

Install [uv](https://docs.astral.sh/uv/getting-started/installation/), then install the package as a tool:

```bash
uv tool install .
```

## Usage

If `uv` tells you its tool bin directory is not on `PATH`, run:

```bash
uv tool update-shell
```

After that, use the single launcher with subcommands:

```bash
xommons showh5 somefile.hdf5
xommons showprobe probe.npy
```

The same installed tool can be invoked through `uvx`:

```bash
uvx xommons showh5 somefile.hdf5
```

`unwrap_phase` has heavier optional dependencies. If you need that subcommand, install the tool with the `unwrap-phase` extra:

```bash
uv tool install '.[unwrap-phase]'
uvx xommons unwrap_phase phase.npy
```
