Metadata-Version: 2.4
Name: fixinspector
Version: 0.1.0
Summary: FIX message parser and viewer
Project-URL: Homepage, https://github.com/khchanel/fixinspector
Project-URL: Repository, https://github.com/khchanel/fixinspector
Project-URL: Issues, https://github.com/khchanel/fixinspector/issues
Author: Nelson Chan
Keywords: financial-information-exchange,fix,parser,qt,viewer
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Environment :: X11 Applications :: Qt
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Office/Business :: Financial
Classifier: Topic :: Software Development :: Debuggers
Requires-Python: >=3.12
Requires-Dist: pyside6>=6.11.1
Provides-Extra: dev
Requires-Dist: pytest>=9.0.3; extra == 'dev'
Description-Content-Type: text/markdown

# FIX Inspector

[![CI](https://github.com/khchanel/fixinspector/actions/workflows/ci.yml/badge.svg)](https://github.com/khchanel/fixinspector/actions/workflows/ci.yml)

Offline FIX message viewer and decoder for troubleshooting trade logs.

## Requirements

- Python 3.12+
- `PySide6` (Qt6)
- Supported platforms: Windows, macOS, and Linux

## Install from source

```sh
python -m pip install -e .
python -m fixinspector
```

![Main UI](./docs/screenshots/main.png)

## Install from PyPI

```sh
python -m pip install fixinspector
python -m fixinspector
```

The `fixinspector` command launches the GUI after installation.

## CLI

```sh
fixinspect decode sample.log --format text
fixinspect decode sample.log --format json
fixinspect index sample.log
```

The same CLI subcommands are available through the package module:

```sh
python -m fixinspector decode sample.log --format json
python -m fixinspector index sample.log
```

Custom QuickFIX-style XML dictionaries can be supplied with `--dict`.

## Development

If you use `uv`, the existing lockfile supports the same workflows:

```sh
uv sync --all-groups
uv run python -m fixinspector
uv run pytest -q
```
