Introduction
Developers for MatCalc should consult this guide for some best practices.
UV
We use uv as our packaging tool to speed up installs and streamline management of dependencies. UV can be installed using brew or pip.
brew install uv
or
pip install uv
Please refer to the uv documentation on how to manage dependencies. The core dependencies should be kept to an absolute minimum. Dependencies that are only used for developmental purposes should be placed in the dev
dependency group using:
uv add <dependency> --dev
Dependencies required for different models should always be optional. For example, matgl is an optional dependency (as well as a dev depdendecy used for unit testing) that is used only when you plan to use MatGL models with Matcalc.
uv add matgl --optional matgl