CIS490/pyproject.toml
Maximus Gorog cc37fc6c4d Interactive envelope plot via WebAgg (browser-based)
plot_envelope.py grows a --show flag. With it, matplotlib's WebAgg backend
spins up a localhost server with a real interactive figure (zoom, pan,
hover, axes lock) — equivalent to a matlab plot window without needing
tkinter or Qt locally.

tools/show_envelope.sh is a NixOS-aware wrapper: it locates libstdc++.so.6
in /nix/store (numpy's prebuilt wheel needs it on LD_LIBRARY_PATH) and then
exec's the python script with --show. Default port 8988, override via
--port. Bound to 0.0.0.0 so the figure is reachable over WG too.

tornado is added to dev deps because WebAgg requires it.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-29 00:06:22 -06:00

25 lines
518 B
TOML

[project]
name = "cis490"
version = "0.0.1"
description = "CIS490 behavioral malware detection — dataset, transport, training"
requires-python = ">=3.11"
dependencies = [
"starlette>=0.36",
"uvicorn[standard]>=0.27",
]
[dependency-groups]
dev = [
"pytest>=8",
"pytest-asyncio>=0.23",
"httpx>=0.27",
"matplotlib>=3.8",
"tornado>=6", # required by matplotlib's WebAgg interactive backend
]
[tool.uv]
package = false
[tool.pytest.ini_options]
asyncio_mode = "auto"
testpaths = ["tests"]