Metadata-Version: 2.4
Name: pynxtools
Version: 0.16.0
Summary: Extend NeXus for experiments and characterization in Materials Science and Materials Engineering and serve as a NOMAD parser implementation for NeXus.
Author: Sherjeel Shabih, Lukas Pielsticker, Florian Dobener, Andrea Albino, Theodore Chang, Carola Emminger, Lev Ginzburg, Ron Hildebrandt, Markus Kühbach, Rubel Mozumder, Tommaso Pincelli, Martin Aeschlimann, Marius Grundmann, Walid Hetaba, Carlos-Andres Palma, Laurenz Rettig, Markus Scheidgen, Sandor Brockhauser, José A. Márquez Prieto, Claudia Draxl, Christoph T. Koch, Heiko B. Weber
Maintainer-email: Lukas Pielsticker <lukas.pielsticker@physik.hu-berlin.de>, Markus Kühbach <markus.kuehbach@physik.hu-berlin.de>, Rubel Mozumder <rubel.mozumder@physik.hu-berlin.de>
License-Expression: Apache-2.0 AND LGPL-3.0-or-later AND MIT
Project-URL: Homepage, https://github.com/FAIRmat-NFDI/pynxtools
Project-URL: Bug Tracker, https://github.com/FAIRmat-NFDI/pynxtools/issues
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: Programming Language :: Python :: 3.14
Classifier: Operating System :: OS Independent
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSES/Apache-2.0.txt
License-File: LICENSES/LGPL-3.0-or-later.txt
License-File: LICENSES/MIT.txt
Requires-Dist: click>=7.1.2
Requires-Dist: click_default_group
Requires-Dist: h5py>=3.6.0
Requires-Dist: hdf5plugin
Requires-Dist: blosc2
Requires-Dist: xarray>=0.20.2
Requires-Dist: PyYAML>=6.0
Requires-Dist: numpy
Requires-Dist: pandas>=1.3.2
Requires-Dist: ase>=3.19.0
Requires-Dist: mergedeep
Requires-Dist: importlib-metadata
Requires-Dist: lxml>=4.9.1
Requires-Dist: toposort>=1.10.0
Requires-Dist: anytree
Requires-Dist: pint
Requires-Dist: cachetools
Requires-Dist: structlog
Requires-Dist: Jinja2
Provides-Extra: nomad
Requires-Dist: nomad-lab>=1.4.0; extra == "nomad"
Requires-Dist: ruff>=0.15.0; extra == "nomad"
Provides-Extra: docs
Requires-Dist: mkdocs; extra == "docs"
Requires-Dist: markdown-exec[ansi]; extra == "docs"
Requires-Dist: mkdocs-material; extra == "docs"
Requires-Dist: mkdocs-material-extensions; extra == "docs"
Requires-Dist: mkdocs-macros-plugin; extra == "docs"
Requires-Dist: mkdocs-click; extra == "docs"
Requires-Dist: markdown-include; extra == "docs"
Provides-Extra: dev
Requires-Dist: mypy; extra == "dev"
Requires-Dist: ruff>=0.15.0; extra == "dev"
Requires-Dist: pytest; extra == "dev"
Requires-Dist: pytest-timeout; extra == "dev"
Requires-Dist: pytest-cov; extra == "dev"
Requires-Dist: pytest-xdist; extra == "dev"
Requires-Dist: types-pyyaml; extra == "dev"
Requires-Dist: types-pytz; extra == "dev"
Requires-Dist: types-requests; extra == "dev"
Requires-Dist: pre-commit; extra == "dev"
Requires-Dist: debugpy; extra == "dev"
Provides-Extra: convert
Requires-Dist: pynxtools[apm,ellips,em,igor,mpes,raman,spm,xas,xps,xrd]; extra == "convert"
Provides-Extra: apm
Requires-Dist: pynxtools-apm>=0.5.3; extra == "apm"
Provides-Extra: ellips
Requires-Dist: pynxtools-ellips>=0.1.3; extra == "ellips"
Provides-Extra: em
Requires-Dist: pynxtools-em>=0.4.6; extra == "em"
Provides-Extra: igor
Requires-Dist: pynxtools-igor>=0.1.6; extra == "igor"
Provides-Extra: mpes
Requires-Dist: pynxtools-mpes>=0.2.8; extra == "mpes"
Provides-Extra: raman
Requires-Dist: pynxtools-raman>=0.1.3; extra == "raman"
Provides-Extra: spm
Requires-Dist: pynxtools-spm>=0.4.0; extra == "spm"
Provides-Extra: xas
Requires-Dist: pynxtools-xas>=0.1.1; extra == "xas"
Provides-Extra: xps
Requires-Dist: pynxtools-xps>=0.6.2; extra == "xps"
Provides-Extra: xrd
Requires-Dist: pynxtools-xrd>=0.0.8; extra == "xrd"
Dynamic: license-file

[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
![](https://github.com/FAIRmat-NFDI/pynxtools/actions/workflows/pytest.yml/badge.svg)
![](https://github.com/FAIRmat-NFDI/pynxtools/actions/workflows/pylint.yml/badge.svg)
![](https://github.com/FAIRmat-NFDI/pynxtools/actions/workflows/publish.yml/badge.svg)
![](https://img.shields.io/pypi/pyversions/pynxtools)
![](https://img.shields.io/pypi/l/pynxtools)
![](https://img.shields.io/pypi/v/pynxtools)
[![Coverage Status](https://coveralls.io/repos/github/FAIRmat-NFDI/pynxtools/badge.svg?branch=master&kill_cache=1)](https://coveralls.io/github/FAIRmat-NFDI/pynxtools?branch=master)
[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.1323437.svg)](https://doi.org/10.5281/zenodo.13862042)
[![REUSE status](https://api.reuse.software/badge/github.com/FAIRmat-NFDI/pynxtools)](https://api.reuse.software/info/github.com/FAIRmat-NFDI/pynxtools)

<table align="center">
<tr><td align="center" width="10000">

# <strong> pynxtools: FAIR data handling using NeXus </strong>
</td></tr></table>


`pynxtools` is an open-source Python package designed for making your experimental data FAIR. `pynxtools` is a parser for combining various instrument output formats and electronic lab notebook (ELN) formats into an HDF5 file according to NeXus application definitions.

Additionally, the software can be used as a plugin in the research data management system NOMAD for making experimental data searchable and publishable. NOMAD is developed by the FAIRmat consortium which is a consortium of the German National Research Data Infrastructure (NFDI).

We welcome contributions! See [contributing](https://fairmat-nfdi.github.io/pynxtools/tutorial/contributing.html) for guidelines on reporting bugs, requesting features, and submitting pull requests.

Read more in the [official documentation page](https://fairmat-nfdi.github.io/pynxtools/).

# How to cite this work

Shabih, S., Pielsticker, L., Dobener, F., Albino, A., Chang, T., Emminger, C., Ginzburg, L., Hildebrandt, R., Kühbach, M., Mozumder, R., Pincelli, T., Aeschlimann, M., Grundmann, M., Hetaba, W., Palma, C.-A., Rettig, L., Scheidgen, M., Márquez, J. A., Draxl, C., Brockhauser, S., Koch, C. T. & Weber, H. B. (2025). Pynxtools: A Python Library for NeXus-Compliant Experimental Data Conversion and Integration with NOMAD Platform. Zenodo. https://doi.org/10.5281/zenodo.15341365

# License

`pynxtools` is primarily licensed under Apache-2.0, with the NeXus-derived generated metainfo classes under LGPL-3.0-or-later, and a small vendored file under MIT. Full license texts are in [`LICENSES/`](LICENSES/); see [Licensing](https://fairmat-nfdi.github.io/pynxtools/learn/pynxtools/licensing.html) for details. The project follows the [REUSE Software specification](https://reuse.software/).
