Skip to main content

fairtool - Computational Materials Data Processing made FAIR

Tests & Coverage codecov Python Lint and Code Quality Code style: ruff License: MIT

Fairtool

FAIR Tool is a command-line interface for processing, analyzing, and visualizing computational materials data. It is designed to work with various calculation output files and provides a streamlined workflow.

Project Lead: Dr. Ravindra Shinde

Email : r.l.shinde@utwente.nl

Contributor: Konstantinos Kontogiannis

Email : k.kontogiannis@student.utwente.nl

Funding: 4TU Research Data Fund 4th Edition

Installing fairtool with uv

This guide explains how to install the fairtool package and its dependencies using uv, a fast Python package installer and resolver.

Prerequisites

  • Python 3.11 – 3.14 (Note: Python <= 3.10 is unsupported because modern upstream scientific dependencies such as pymatgen (2026+) and numpy require Python 3.11 or newer)
  • uv installed (see below)
  • Git (optional, for cloning the repository)

1. Clone the Repository (if needed)

git clone https://github.com/neelravi/fairtool.git
cd fairtool

2. Install uv

If you don't have uv installed, run:

curl -Ls https://astral.sh/uv/install.sh | sh

This will install uv to ~/.local/bin/uv by default. Make sure this directory is in your PATH.

You may install Python using uv quickly with:

uv python install 3.11

3. Create a Virtual Environment with uv

It's recommended to use a virtual environment. You can create one using uv:

uv venv .venv
source .venv/bin/activate

4. Install Dependencies with uv

From the project root directory, run:

uv pip install -r requirements.txt

This will install all required dependencies quickly using uv's resolver.

5. Install fairtool (Editable/Development Mode)

To install the package in editable mode (recommended for development):

uv pip install -e .

6. Run the CLI

You can now run the CLI using:

fair

Verification & Testing

Verify that your installation, test suite, and site generation pass:

1. Run the Test Suite with Coverage

# Run pytest with code coverage breakdown
pytest --cov=fairtool --cov-report=term-missing

2. Verify Code Quality with Ruff

# Check linting and formatting
ruff check fairtool tests
ruff format --check fairtool tests

3. Verify Static Documentation Build

# Test site build without launching dev server
fair visualize tests/VASP/ --build

Troubleshooting

  • Ensure you are using Python 3.11+ for best compatibility.
  • If you see ModuleNotFoundError: No module named 'fairtool', make sure your PYTHONPATH includes the project root.
  • If uv is not found, ensure ~/.local/bin is in your PATH.

References

Release files for fairtool 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for fairtool 1.0.0
File Size Uploaded
fairtool-1.0.0.tar.gz 108.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for fairtool 1.0.0
File Interpreter ABI Platform
fairtool-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 258.5 kB

Release files / fairtool-1.0.0.tar.gz

Download URL fairtool-1.0.0.tar.gz
Size 108.0 kB
Tags Source
SHA-256 checksum
How to use checksums
2447adddc831d385cb7445b3682f031e5d4b0cb6a48af48eb087933cfe9c3d7b
BLAKE2b-256 checksum
How to use checksums
5ca5c2492d3982052e0ff07c29528f1461834f05159e86612a6f0281bd29dbc6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 24, 2026.

Transparency log

Release files / fairtool-1.0.0-py3-none-any.whl

Download URL fairtool-1.0.0-py3-none-any.whl
Size 150.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3693bb10262fad4766bec1f4f0df6e596a40737fba0b28b80ff51f5db093cd26
BLAKE2b-256 checksum
How to use checksums
213baaacf63ce44975bf0f2b3cf145bb1cec7b570c962ae45f91c575069549a6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 24, 2026.

Transparency log

Release history Release notifications | RSS feed

1.1.0

2 release files

This release

1.0.0 This release

2 release files

0.2.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page