Metadata-Version: 2.5
Name: pyrafikiafm
Version: 0.0.1
Summary: Analysis of Atomic Force Microscopy (AFM) data acquired in Quantitative Imaging (QI) mode.
Project-URL: Homepage, https://github.com/tamagnoP/pyrafikiafm
Project-URL: Documentation, https://github.com/tamagnoP/pyrafikiafm#readme
Project-URL: Repository, https://github.com/tamagnoP/pyrafikiafm
Project-URL: Issues, https://github.com/tamagnoP/pyrafikiafm/issues
Project-URL: Changelog, https://github.com/tamagnoP/pyrafikiafm/blob/main/CHANGELOG.md
Author-email: Tamagno Pesqueira <office.tpesqueira@gmail.com>
Maintainer-email: Tamagno Pesqueira <office.tpesqueira@gmail.com>
License-Expression: AGPL-3.0-or-later
License-File: LICENSE
Keywords: afm,atomic-force-microscopy,force-curves,image-analysis,microscopy,nanoindentation,qi-mode
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Science/Research
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering :: Image Processing
Classifier: Topic :: Scientific/Engineering :: Physics
Classifier: Topic :: Scientific/Engineering :: Visualization
Requires-Python: >=3.9
Requires-Dist: matplotlib>=3.5
Requires-Dist: numpy>=1.21
Requires-Dist: pandas>=1.3
Requires-Dist: scipy>=1.7
Provides-Extra: dev
Requires-Dist: build>=1.0; extra == 'dev'
Requires-Dist: pytest-cov>=4.0; extra == 'dev'
Requires-Dist: pytest>=7.0; extra == 'dev'
Requires-Dist: ruff>=0.4; extra == 'dev'
Requires-Dist: twine>=5.0; extra == 'dev'
Provides-Extra: docs
Requires-Dist: furo; extra == 'docs'
Requires-Dist: myst-parser; extra == 'docs'
Requires-Dist: sphinx>=7.0; extra == 'docs'
Description-Content-Type: text/markdown

# pyrafikiafm

**A Python toolkit for analysing Atomic Force Microscopy (AFM) data acquired in Quantitative Imaging (QI) mode.**

> ⚠️ Early development — the API is unstable and will change. This README is a
> placeholder and will be expanded into full documentation.

## What is it?

QI-mode AFM records a complete force–distance curve at every pixel of a scan,
producing a 3D dataset (x, y, force curve) rather than a single height image.
`pyrafikiafm` aims to make working with those datasets straightforward:

- Load QI force-volume datasets and their metadata.
- Inspect and correct individual force curves (baseline, contact point, tip–sample separation).
- Extract per-pixel quantities such as height, adhesion, stiffness and Young's modulus.
- Rebuild the results into maps and export them for further analysis or plotting.

## Installation

```bash
pip install pyrafikiafm
```

From source:

```bash
git clone https://github.com/tamagnoP/pyrafikiafm.git
cd pyrafikiafm
pip install -e ".[dev]"
```

## Usage

```python
import pyrafikiafm

# Coming soon.
```

## Requirements

Python 3.9+, with NumPy, SciPy, pandas and Matplotlib.

## Contributing

Issues and pull requests are welcome. Since the project is in its early stages,
please open an issue first to discuss larger changes.

```bash
pip install -e ".[dev]"
pytest
ruff check .
```

Notable changes are recorded in [CHANGELOG.md](CHANGELOG.md).

## License

GNU Affero General Public License v3.0 or later (AGPL-3.0-or-later) — see [LICENSE](LICENSE).

This means that if you run a modified version of `pyrafikiafm` as a network
service, you must make the corresponding source code available to its users.
