pandas>=2.2.3
numpy>=2.2.4
pydicom>=2.3
numpy-stl>=3.2.0
plotly>=4.13.3
scipy>=1.15.2
tqdm>=4.66
psutil>=5.9
pillow>=13.0.0
kaleido>=0.2.1
rich>=13.0
openpyxl>=3.1
pypdf>=6.21.4
reportlab>=4.0.4
python-docx>=1.1

[dev]
PyYAML>=6
basedpyright>=1.23
defusedxml>=0.7.1
pandas-stubs>=2.2
types-Pillow
pip-audit>=2.7
bandit>=1.8
shellcheck-py>=0.11
pre-commit>=4.0
virtualenv>=21.14.13
filelock>=4.2.1
msgpack>=1.2.3
pytest<10,>=7.0
pytest-cov>=5.0
pytest-xdist>=3.5
diff-cover>=10.0
ruff<0.18,>=0.15
playwright>=1.40
pytest-playwright>=0.4

[docs]
sphinx
sphinx-rtd-theme
pydata-sphinx-theme
myst-parser
nbsphinx
ipykernel
ipywidgets
pandoc
tornado>=6.6
nbconvert>=7.17.2

[export]
reportlab>=4.0.4
python-docx>=1.1

[gui]
nicegui>=3.18.0
itsdangerous<3,>=2.1.2
pytest-asyncio>=0.24
certifi>=2026.10.19

[gui-native]
nicegui>=3.18.0
itsdangerous<3,>=2.1.2
pywebview
pytest-asyncio>=0.24
certifi>=2026.10.19

[notebooks]
jupyterlab>=4.6.2
ipykernel
ipywidgets
tornado>=6.6
nbconvert>=7.17.2

[phantom-gen]
trimesh>=4
fast-simplification
networkx>=3
scikit-image>=0.22
