numpy>=1.24.0
scipy>=1.10.0
pandas>=2.0.0
numba>=0.57.0
scikit-learn>=1.2.0
networkx>=3.0.0
matplotlib>=3.7.0

[ai]
google-genai
pydantic

[desktop]
customtkinter

[dev]
pytest>=7.0.0
pytest-cov>=4.0.0

[full]
matplotlib>=3.7
seaborn
pandas
openpyxl
xarray
streamlit
typer
fastapi
uvicorn
python-multipart
geopandas
libpysal
scikit-learn
numba
dask
folium
streamlit-folium
google-genai
celery
redis
websockets
pyjwt
jax
jaxlib
faust-streaming
neo4j
pluggy
python-rocksdb
prometheus-client
pydantic-settings
tenacity
aiokafka
customtkinter
pywebview

[gis]
geopandas
libpysal

[performance]
numba
dask
jax
jaxlib
pluggy

[platform]
fastapi
uvicorn
streamlit
python-multipart
pandas
xarray
folium
streamlit-folium
celery
redis
websockets
pyjwt
faust-streaming
neo4j
python-rocksdb
prometheus-client
pydantic-settings
tenacity
aiokafka

[reports]
Jinja2>=3.1.0
python-docx>=1.1.0
kaleido>=0.2.1
plotly>=5.0.0

[studio]
streamlit>=1.28
matplotlib>=3.7
pandas
openpyxl
pywebview

[validation]
scikit-learn

[visualization]
matplotlib>=3.7
seaborn
