# This file was autogenerated by uv via the following command:
#    uv export --format requirements-txt --locked --no-hashes --output-file requirements-dev.txt
-e .
anyio==4.15.1
    # via jupyter-server
argon2-cffi==25.1.0
    # via jupyter-server
argon2-cffi-bindings==26.1.0
    # via argon2-cffi
arrow==1.4.0
    # via isoduration
ast-serialize==0.11.1
    # via mypy
asttokens==3.0.2
    # via stack-data
attrs==26.1.0
    # via
    #   jsonschema
    #   referencing
babel==2.18.0
    # via jupyterlab-server
beautifulsoup4==4.15.0
    # via nbconvert
bleach==6.4.0
    # via nbconvert
cachetools==7.1.8
    # via tox
certifi==2026.7.22
    # via requests
cffi==2.1.1
    # via
    #   argon2-cffi-bindings
    #   pyzmq
cfgv==3.5.0
    # via pre-commit
charset-normalizer==3.5.1
    # via requests
click==8.5.0
    # via
    #   mkdocs
    #   zensical
colorama==0.4.6
    # via
    #   ipython
    #   mkdocs
    #   pytest
    #   tox
contourpy==1.3.3 ; python_full_version < '3.12'
    # via matplotlib
contourpy==1.4.0 ; python_full_version >= '3.12'
    # via matplotlib
coverage==7.16.0
    # via pytest-cov
cycler==0.12.1
    # via matplotlib
decorator==5.3.1
    # via ipdb
deepmerge==3.0.1
    # via zensical
defusedxml==0.7.1
    # via nbconvert
distlib==0.4.3
    # via virtualenv
doit==0.37.0
    # via jupyterlite-core
executing==2.2.1
    # via stack-data
fastjsonschema==2.22.2
    # via nbformat
filelock==3.32.6
    # via
    #   python-discovery
    #   tox
    #   virtualenv
fonttools==4.65.0
    # via matplotlib
fqdn==1.5.1
    # via jsonschema
ghp-import==2.1.0
    # via mkdocs
griffe-warnings-deprecated==1.1.1
griffelib==2.3.0
    # via
    #   griffe-warnings-deprecated
    #   mkdocstrings-python
identify==2.6.19
    # via pre-commit
idna==3.19
    # via
    #   anyio
    #   jsonschema
    #   requests
iniconfig==2.3.0
    # via pytest
ipdb==0.13.13
ipython==9.17.1
    # via ipdb
ipython-pygments-lexers==1.1.1
    # via ipython
isoduration==20.11.0
    # via jsonschema
jedi==0.20.0
    # via ipython
jinja2==3.1.6
    # via
    #   jupyter-server
    #   jupyterlab-server
    #   mike
    #   mkdocs
    #   mkdocstrings
    #   nbconvert
    #   zensical
json5==0.15.0
    # via jupyterlab-server
jsonpointer==3.1.1
    # via jsonschema
jsonschema==4.26.0
    # via
    #   jupyter-events
    #   jupyterlab-server
    #   nbformat
jsonschema-specifications==2025.9.1
    # via jsonschema
jupyter-client==8.10.0
    # via
    #   jupyter-server
    #   nbclient
jupyter-core==5.9.1
    # via
    #   jupyter-client
    #   jupyter-server
    #   jupyterlite-core
    #   nbclient
    #   nbconvert
    #   nbformat
jupyter-events==0.12.1
    # via jupyter-server
jupyter-server==2.21.1
    # via jupyterlab-server
jupyter-server-terminals==0.5.4
    # via jupyter-server
jupyterlab-pygments==0.3.0
    # via nbconvert
jupyterlab-server==2.28.1
jupyterlab-widgets==3.0.17
jupyterlite==0.8.5
jupyterlite-core==0.8.5
    # via
    #   jupyterlite
    #   jupyterlite-pyodide-kernel
jupyterlite-pyodide-kernel==0.8.6
jupytext==1.19.5
kiwisolver==1.5.1
    # via matplotlib
lark==1.3.1
    # via rfc3987-syntax
librt==0.15.0 ; platform_python_implementation != 'PyPy'
    # via mypy
markdown==3.10.3
    # via
    #   mkdocs
    #   mkdocs-autorefs
    #   mkdocstrings
    #   pymdown-extensions
    #   zensical
markdown-it-py==4.2.0
    # via
    #   jupytext
    #   mdit-py-plugins
markdown-pycon==1.0.1
markupsafe==3.0.3
    # via
    #   jinja2
    #   mkdocs
    #   mkdocs-autorefs
    #   mkdocstrings
    #   nbconvert
matplotlib==3.11.2
matplotlib-inline==0.2.2
    # via ipython
mdit-py-plugins==0.6.1
    # via jupytext
mdurl==0.1.2
    # via markdown-it-py
mergedeep==1.3.4
    # via
    #   mkdocs
    #   mkdocs-get-deps
mike @ git+https://github.com/squidfunk/mike.git@2d4ad799442f4592db8ad53b179bfb33db8c69ac
mistune==3.3.4
    # via nbconvert
mkdocs==1.6.1
    # via
    #   mkdocs-autorefs
    #   mkdocstrings
mkdocs-autorefs==1.4.4
    # via
    #   mkdocstrings
    #   mkdocstrings-python
mkdocs-get-deps==0.2.2
    # via mkdocs
mkdocstrings==1.0.6
    # via mkdocstrings-python
mkdocstrings-python==2.0.8
    # via mkdocstrings
mpmath==1.3.0
    # via sympy
mypy==2.3.1
mypy-extensions==1.1.0
    # via mypy
narwhals==2.26.0
    # via plotly
nbclient==0.11.0
    # via nbconvert
nbconvert==7.17.1
    # via jupyter-server
nbformat==5.11.1
    # via
    #   jupyter-server
    #   jupytext
    #   nbclient
    #   nbconvert
nodeenv==1.10.0
    # via
    #   pre-commit
    #   pyright
numpy==2.4.6 ; python_full_version < '3.12'
    # via
    #   contourpy
    #   matplotlib
    #   pandas
    #   pandas-stubs
numpy==2.5.3 ; python_full_version >= '3.12'
    # via
    #   contourpy
    #   matplotlib
    #   pandas
    #   pandas-stubs
optype==0.17.1 ; python_full_version < '3.12'
    # via dyce
optype==0.18.0 ; python_full_version >= '3.12'
    # via dyce
overrides==7.7.0 ; python_full_version < '3.12'
    # via jupyter-server
packaging==26.3
    # via
    #   jupyter-events
    #   jupyter-server
    #   jupyterlab-server
    #   jupytext
    #   matplotlib
    #   mkdocs
    #   nbconvert
    #   plotly
    #   pyproject-api
    #   pytest
    #   tox
    #   tox-uv-bare
    #   virtualenv
pandas==3.0.6
pandas-stubs==3.0.5.260914
pandocfilters==1.5.1
    # via nbconvert
parso==0.8.7
    # via jedi
pathspec==1.1.1
    # via
    #   mkdocs
    #   mypy
    #   zensical
pexpect==4.9.0 ; sys_platform != 'emscripten' and sys_platform != 'win32'
    # via ipython
pillow==12.3.0
    # via matplotlib
pkginfo==1.13
    # via jupyterlite-pyodide-kernel
platformdirs==4.11.8
    # via
    #   jupyter-core
    #   mkdocs-get-deps
    #   tox
    #   virtualenv
plotly==7.1.0
pluggy==1.6.0
    # via
    #   pytest
    #   pytest-cov
    #   tox
pre-commit==4.6.2
    # via pre-commit-uv
pre-commit-uv==4.3.0
prometheus-client==0.26.0
    # via jupyter-server
prompt-toolkit==3.0.53
    # via ipython
psutil==7.2.2 ; sys_platform != 'cygwin' and sys_platform != 'emscripten'
    # via ipython
ptyprocess==0.7.0 ; os_name != 'nt' or (sys_platform != 'emscripten' and sys_platform != 'win32')
    # via
    #   pexpect
    #   terminado
pure-eval==0.2.4
    # via stack-data
py-cpuinfo2==10.1.1
    # via pytest-benchmark
pycparser==3.0 ; implementation_name != 'PyPy' or platform_python_implementation == 'PyPy'
    # via
    #   cffi
    #   jupyterlite-core
pygments==2.21.0
    # via
    #   ipython
    #   ipython-pygments-lexers
    #   nbconvert
    #   pytest
    #   zensical
pymdown-extensions==12.1
    # via
    #   mkdocstrings
    #   zensical
pyparsing==3.3.2
    # via
    #   matplotlib
    #   mike
pyproject-api==1.11.0
    # via tox
pyright==1.1.414
pytest==9.1.1
    # via
    #   pytest-benchmark
    #   pytest-cov
pytest-benchmark==5.3.0
pytest-cov==7.1.0
python-dateutil==2.9.0.post0
    # via
    #   arrow
    #   ghp-import
    #   jupyter-client
    #   matplotlib
    #   pandas
python-discovery==1.6.0
    # via
    #   tox
    #   virtualenv
python-json-logger==4.2.0
    # via jupyter-events
pywinpty==3.0.5 ; os_name == 'nt'
    # via
    #   jupyter-server
    #   jupyter-server-terminals
    #   terminado
pyyaml==6.0.3
    # via
    #   jupyter-events
    #   jupytext
    #   mkdocs
    #   mkdocs-get-deps
    #   pre-commit
    #   pymdown-extensions
    #   pyyaml-env-tag
    #   zensical
pyyaml-env-tag==1.1
    # via mkdocs
pyzmq==27.2.0
    # via
    #   jupyter-client
    #   jupyter-server
referencing==0.37.0
    # via
    #   jsonschema
    #   jsonschema-specifications
    #   jupyter-events
requests==2.34.2
    # via jupyterlab-server
rfc3339-validator==0.1.4
    # via
    #   jsonschema
    #   jupyter-events
rfc3986-validator==0.1.1
    # via
    #   jsonschema
    #   jupyter-events
rfc3987-syntax==1.1.0
    # via jsonschema
rpds-py==2026.6.3
    # via
    #   jsonschema
    #   referencing
ruff==0.16.10
send2trash==2.1.0
    # via jupyter-server
six==1.17.0
    # via
    #   python-dateutil
    #   rfc3339-validator
soupsieve==2.9.2
    # via beautifulsoup4
stack-data==0.6.3
    # via ipython
sympy==1.14.0
terminado==0.18.1
    # via
    #   jupyter-server
    #   jupyter-server-terminals
tinycss2==1.5.1
    # via bleach
tomli==2.4.1
    # via
    #   coverage
    #   zensical
tomli-w==1.2.0
    # via tox
tornado==6.5.10
    # via
    #   jupyter-client
    #   jupyter-server
    #   terminado
tox==4.64.5
    # via tox-uv-bare
tox-uv==1.36.0
tox-uv-bare==1.36.0
    # via tox-uv
traitlets==5.16.1
    # via
    #   ipython
    #   jupyter-client
    #   jupyter-core
    #   jupyter-events
    #   jupyter-server
    #   matplotlib-inline
    #   nbclient
    #   nbconvert
    #   nbformat
ty==0.0.84
typing-extensions==4.16.0
    # via
    #   anyio
    #   beautifulsoup4
    #   dyce
    #   ipython
    #   jupyter-client
    #   mypy
    #   optype
    #   pyright
    #   referencing
    #   tox
tzdata==2026.3
    # via
    #   arrow
    #   pandas
uri-template==1.3.0
    # via jsonschema
urllib3==2.8.0
    # via requests
uv==0.12.19
    # via
    #   pre-commit-uv
    #   tox-uv
verspec==0.1.0
    # via mike
virtualenv==21.14.2
    # via
    #   pre-commit
    #   tox
watchdog==6.0.0
    # via mkdocs
wcwidth==0.8.3
    # via prompt-toolkit
webcolors==25.10.0
    # via jsonschema
webencodings==0.6.1
    # via
    #   bleach
    #   tinycss2
websocket-client==1.9.2
    # via jupyter-server
zensical==0.0.67
    # via mike
zuban==0.10.0
