PyYAML
click
custodian>=2024.4.18
emmet-core>=v0.84.10rc2
jobflow>=0.1.11
monty>=2024.12.10
numpy
pydantic-settings>=2.0.3
pydantic>=2.0.1
pymatgen>=2024.11.13
pymongo<=4.10.1

[abinit]
abipy>=0.9.3

[amset]
amset>=0.4.15
pydash

[approxneb]
pymatgen-analysis-diffusion>=2024.7.15

[ase]
ase>=3.26.0

[ase-ext]

[ase-ext:platform_system == "Linux"]
tblite>=0.3.0

[cclib]
cclib>=1.8.1

[defects]
dscribe>=1.2.0
pymatgen-analysis-defects>=2024.5.11
python-ulid>=2.7

[dev]
pre-commit>=2.12.1

[docs]
FireWorks==2.0.4
autodoc_pydantic==2.2.0
furo==2025.7.19
ipython==8.37.0
jsonschema[format]
myst_parser==4.0.1
numpydoc==1.9.0
sphinx-copybutton==0.5.2
sphinx==8.1.3
sphinx_design==0.6.1
jupyterlab==4.4.6

[fireworks]
FireWorks==2.0.4

[forcefields]
ase>=3.26.0
calorine>=3.0
chgnet>=0.2.2
mace-torch>=0.3.3
matgl>=1.2.1
torchdata<=0.7.1
sevenn>=0.9.3

[forcefields:python_version < "3.12"]
quippy-ase>=0.9.14

[lobster]
ijson>=3.2.2
lobsterpy>=0.4.0

[mp]
mp-api>=0.37.5

[openmm]
mdanalysis>=2.8.0
openmm-mdanalysis-reporter>=0.1.0
openmm>=8.1.0

[phonons]
phonopy>=1.10.8
seekpath>=2.0.0

[strict]
atomate2[ase,ase-ext,cclib,defects,docs,lobster,mp,openmm,phonons,strict-forcefields]

[strict-forcefields]
calorine==3.1
chgnet==0.3.8
mace-torch==0.3.14
matgl==1.3.0
sevenn==0.10.4
torch==2.2.0
torchdata==0.7.1

[strict-forcefields:python_version < "3.12"]
quippy-ase==0.9.14

[strict-openff]
mdanalysis==2.9.0
monty==2025.3.3
openmm-mdanalysis-reporter==0.1.0
openmm==8.1.1
pymatgen==2025.6.14

[tests]
FireWorks==2.0.4
nbmake==1.5.5
pytest-cov==6.2.1
pytest-mock==3.14.1
pytest-split==0.10.0
pytest-xdist==3.8.0
pytest==8.4.1
