[project] name = "discovery-backend" version = "0.1.0" description = "LLM-driven music discovery on the Spotify Web API" requires-python = "==3.13.*" dependencies = [ "anthropic==0.121.0", "fastapi>=0.116", "httpx>=0.28", "httpx2>=2.10", "pydantic-settings>=2.10", "pyyaml>=6.0", "structlog>=25.4", "uvicorn[standard]>=0.35", ] [dependency-groups] dev = [ "mypy>=1.17", "pytest>=8.4", "ruff>=0.12", "types-pyyaml>=6.0", ] [tool.ruff] line-length = 100 target-version = "py313" [tool.ruff.lint] select = ["E", "F", "I", "N", "UP", "B", "SIM", "RUF"] [tool.mypy] python_version = "3.13" strict = false warn_unused_ignores = true [[tool.mypy.overrides]] module = ["app.domain.*", "app.ports.*", "app.pipeline.*"] strict = true [tool.pytest.ini_options] pythonpath = [".", "../eval"] testpaths = ["tests", "../eval/tests"]