[project]
name = "chitai"
version = "0.1.0"
description = "Add your description here"
readme = "README.md"
authors = [
    { name = "patrykj", email = "patrykjaroszewski@proton.me" }
]
requires-python = ">=3.13"
dependencies = [
    "advanced-alchemy>=1.8.0",
    "aiofiles>=24.1.0",
    "asyncpg>=0.30.0",
    "ebooklib>=0.19",
    "jinja2>=3.1.6",
    "litestar[jwt,standard]>=2.16.0",
    "passlib>=1.7.4",
    "pillow>=11.2.1",
    "pwdlib[argon2]>=0.2.1",
    "pydantic>=2.11.5",
    "pydantic-settings>=2.9.1",
    "pypdfium2>=4.30.0",
    "watchfiles>=1.1.1",
    "xmltodict>=1.0.2",
]

[project.scripts]
chitai = "chitai:main"

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

[dependency-groups]
dev = [
    "pytest>=8.4.2",
    "pytest-asyncio>=1.2.0",
    "pytest-databases[postgres]>=0.15.0",
]

[tool.ruff.lint.per-file-ignores]
# The package __init__.py files exist to re-export their modules' public names, so every
# import in them is "unused" as far as F401 is concerned.
"__init__.py" = ["F401"]

[tool.pytest.ini_options]
asyncio_mode = "auto"
testpaths = ["tests"]
filterwarnings = [                                                                          
    "ignore::jwt.warnings.InsecureKeyLengthWarning",                                      
] 