atheon-in-action / pyproject.toml
dexter2389's picture
Rebrand Migration
825b8cd
[project]
name = "atheon-in-action"
version = "0.0.0"
description = "Huggingface Demo showcasing how Atheon works"
authors = [{ name = "Saurabh Ghanekar", email = "ghanekarsaurabh8@gmail.com" }]
license = "BSD-2-Clause"
license-files = ["LICENSE"]
readme = "README.md"
requires-python = ">=3.11"
dependencies = [
"fastapi-slim>=0.115",
"uvicorn>=0.34",
"pydantic>=2.10",
"pillow>=11.1",
"atheon-codex>=0.3",
"llama-cpp-python>=0.3",
"huggingface-hub>=0.29",
"pymongo>=4.11",
"email-validator>=2.2",
"groq>=0.20",
]
[dependency-groups]
dev = ["click>=8.1", "pre-commit>=4.0", "rich>=13.9", "ruff>=0.9"]
test = ["pytest>=8.3", "pytest-cov>=6.0"]
[tool.uv]
default-groups = ["dev", "test"]
[tool.ruff]
line-length = 88
[tool.ruff.lint]
select = [
# "D", # pydocstyle
"E", # pycodestyle errors
"W", # pycodestyle warnings
"F", # pyflakes
"I", # isort
"S", # flake8-bandit
"B", # flake8-bugbear
"C4", # flake8-comprehensions
"UP", # pyupgrade
"ARG001", # unused arguments in functions
]
ignore = [
"E501", # line too long, handled by black
"B008", # do not perform function calls in argument defaults
"W191", # indentation contains tabs
"B904", # Allow raising exceptions without from e, for HTTPException
]
[tool.ruff.lint.pydocstyle]
convention = "google"
[tool.versioning]
backend = "uv"
[tool.versioning.files]
version_variable = ["app/app/main.py:__version__"]
[tool.tailwind_sorter]
file_patterns = [".html"]
class_attributes = ["class"]