Anri is a Python package for analysing Three-Dimensional X-Ray Diffraction data.
Anri is in the very early stages of development and is not yet ready to use for experimental analysis.
We currently target all stable releases of Python. Today this is 3.9 - 3.13 on Windows, ubuntu and OSX (ARM and x86).
Coming soon!
Anri will (eventually) rely on packages from both conda and pip.
For ease of installation, it is recommended to use unidep which can install packages from both sources.
git clone [email protected]:jadball/anri.git anri
cd anriconda create -n <env-name>
conda activate <env-name>which pip # should yield something inside the environment <env-name>pip install --upgrade pip unidepunidep install .[dev]This GitHub repository is based on the python package template by @allenai: python-package-template.
Visual Studio Code is recommended for development.
anri uses ruff to lint and format, and mypy for type-checking.
All Python functions and files (outside of anri/sandbox) must conform for the GitHub CI tests to pass.
With Visual Studio Code you have easy access to automatic lint-on-save and format-on-save via extensions.
Inside .vscode you have a settings.sample.json which, if you're happy with, you can rename to settings.json to apply my recommended per-project settings for this repository.
You also have extensions.json containing my recommended extensions (including ruff) which Visual Studio Code should prompt you to install automatically.