[project] name = "llm-monitor" version = "1.0.0" description = "Read-only real-time dashboard for a gufo server and a vLLM server (sessions, queueing, cache pressure, throughput, latency)" readme = "README.md" requires-python = ">=3.10" # Deliberately tiny: the Prometheus exposition is parsed in-process (class Prom in # app.py) rather than pulled in as prometheus_client, and the frontend has zero # runtime deps (vanilla JS + inline SVG, no CDN). dependencies = [ "fastapi>=0.111", "httpx>=0.27", "uvicorn[standard]>=0.30", ] # uv dev group: installed by plain `uv sync` (skip with `uv sync --no-dev`). [dependency-groups] dev = [ "pytest>=8", "pytest-cov>=5", ] # Not a distributable package — a single-file app run as `uv run uvicorn app:app`. # package=false means no build backend, nothing to install, `uv run` just syncs deps. [tool.uv] package = false [tool.pytest.ini_options] testpaths = ["tests"] addopts = "-q --strict-markers" [tool.coverage.run] source = ["app"] omit = ["tests/*"] [tool.coverage.report] show_missing = true skip_covered = false