[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[project]
name = "safetyrouter"
version = "0.1.6"
description = "Bias-aware LLM routing framework that guarantees unbiased responses — classifies bias type locally at zero API cost, then routes to the best specialized model for that category"
readme = "README.md"
license = { file = "LICENSE" }
authors = [{ name = "SafetyRouter Contributors" }]
keywords = ["llm", "routing", "bias", "ai", "safety", "fairness", "gemma3n", "ollama"]
classifiers = [
    "Development Status :: 3 - Alpha",
    "Intended Audience :: Developers",
    "License :: OSI Approved :: Apache Software License",
    "Programming Language :: Python :: 3",
    "Programming Language :: Python :: 3.10",
    "Programming Language :: Python :: 3.11",
    "Programming Language :: Python :: 3.12",
    "Topic :: Scientific/Engineering :: Artificial Intelligence",
]
requires-python = ">=3.10"
dependencies = [
    "ollama>=0.4.0",
    "pydantic>=2.0.0",
    "python-dotenv>=1.0.0",
    "click>=8.0.0",
]

[project.optional-dependencies]
openai = ["openai>=1.0.0"]
anthropic = ["anthropic>=0.39.0"]
google = ["google-generativeai>=0.8.0"]
groq = ["groq>=0.11.0"]
serve = ["fastapi>=0.110.0", "uvicorn[standard]>=0.29.0"]
all = [
    "openai>=1.0.0",
    "anthropic>=0.39.0",
    "google-generativeai>=0.8.0",
    "groq>=0.11.0",
    "fastapi>=0.110.0",
    "uvicorn[standard]>=0.29.0",
]

[project.scripts]
safetyrouter = "safetyrouter.cli:main"

[project.urls]
Homepage = "https://safety-router.com"
Repository = "https://github.com/rdxvicky/safetyrouter"
Issues = "https://github.com/rdxvicky/safetyrouter/issues"

[tool.hatch.build.targets.wheel]
packages = ["safetyrouter"]

[tool.hatch.build.targets.sdist]
exclude = [
    "venv/",
    "*.pdf",
    "app/",
    ".DS_Store",
    "dist/",
    "*.egg-info/",
]
