Click>=7.0
joblib>=1.3.0
lasio
loguru
matplotlib==3.8.0
numpy
pandas
plotly
python-dotenv
ruptures
scikit-learn
scipy
setuptools<81
tqdm
wellpathpy
welly

[all]
quick-pp[app,core,ml]
bokeh>=3.0
ipykernel>=6.0
ipywidgets
jupyter>=1.0
nbformat
openpyxl
xlrd

[app]
email-validator
fastapi
fastapi-mcp
jinja2
mcp
orjson
psycopg2-binary
pydantic
pydantic_core
python-multipart
requests
sqlalchemy
uvicorn

[app:sys_platform != "win32"]
gunicorn

[core]
Click>=7.0
joblib>=1.3.0
lasio
loguru
matplotlib==3.8.0
numpy
pandas
plotly
python-dotenv
ruptures
scikit-learn
scipy
setuptools<81
tqdm
wellpathpy
welly

[dev]
quick-pp[all,docs,test]
black>=23.0
build>=0.10
dtw-python
mypy>=1.5
pre-commit>=3.0
ptitprince
rockphypy
ruff>=0.1.0
SALib==1.5.1
twine>=4.0

[docs]
mkdocs>=1.6
mkdocs-jupyter>=0.24
mkdocs-material>=9.5
mkdocstrings[python]>=0.25

[full]
quick-pp[all]

[ml]
fastparquet
imbalanced-learn
mapie>=1.0.0
mlflow
pyarrow
scikit-learn
seaborn>=0.12

[test]
pytest>=7.0
pytest-cov>=4.0
pytest-mock>=3.10
pytest-xdist>=3.0
