lark~=1.1
pydantic!=1.10.7,>=1.10.2,~=1.10
email_validator>=1.2
requests~=2.28

[aiida]
aiida-core~=2.1

[all]
optimade[aiida,ase,client,dev,elastic,http_client,jarvis,pymatgen]

[ase]
ase~=3.22

[cif]
numpy>=1.20

[client]
optimade[cif]

[dev]
black~=23.1
isort~=5.12
mypy~=1.0
pre-commit~=3.0
invoke~=2.0
types-all==1.0.0
ruff~=0.0
optimade[client,docs,http_client,testing]

[docs]
mike~=1.1
mkdocs~=1.4
mkdocs-awesome-pages-plugin~=2.8
mkdocs-material~=9.0
mkdocstrings[python-legacy]~=0.20

[elastic]
elasticsearch-dsl<8.0,~=7.4
elasticsearch~=7.17

[http_client]
httpx~=0.23
rich~=13.0
click~=8.1

[jarvis]
jarvis-tools>=2023.1.8

[mongo]
pymongo~=4.0
mongomock~=4.1

[pymatgen]
pymatgen>=2022

[server]
uvicorn[standard]~=0.19
fastapi<0.99,~=0.86
pyyaml~=6.0
optimade[mongo]

[testing]
build~=0.9.0
jsondiff~=2.0
pytest~=7.2
pytest-cov~=4.0
optimade[server]
