[project]
name = "translate"
version = "0.1.0"
description = "Add your description here"
readme = "README.md"
requires-python = ">=3.12"
dependencies = [
    "aiofiles==23.2.1",
    "aiosmtplib>=3.0.0",
    "aiosqlite>=0.19.0",
    "alembic==1.13.1",
    "asyncpg>=0.29.0",
    "bcrypt<4.1",
    "deep-translator==1.11.4",
    "fastapi==0.109.0",
    "greenlet>=3.0.0",
    "httpx>=0.27.0,<0.28",
    "ipykernel==6.27.1",
    "lxml>=4.9.0",
    "matplotlib==3.8.2",
    "openai>=1.0.0",
    "openpyxl==3.1.2",
    "pandas==2.1.4",
    "passlib[bcrypt]==1.7.4",
    "pdf2docx>=0.5.6",
    "pillow==10.2.0",
    "pip>=25.3",
    "prometheus-client==0.20.0",
    "psutil==5.9.8",
    "psycopg2-binary>=2.9.0",
    "pydantic[email]==2.5.3",
    "pyjwt==2.8.0",
    "pymupdf>=1.24.0",
    "pytest>=7.0.0",
    "pytest-asyncio>=0.21.0",
    "python-docx==1.1.0",
    "python-dotenv==1.0.0",
    "python-magic>=0.4.27",
    "python-multipart==0.0.9",
    "python-pptx==0.6.23",
    "redis==5.0.1",
    "reportlab>=4.0.0",
    "requests==2.31.0",
    "sqlalchemy==2.0.25",
    "stripe==7.0.0",
    "structlog>=24.1.0",
    "uvicorn[standard]==0.27.0",
]

[dependency-groups]
dev = [
    "ruff>=0.6.0",
    "pytest-cov>=5.0.0",
]

[tool.ruff]
line-length = 100
target-version = "py312"

[tool.ruff.lint]
select = ["E", "F", "I", "W", "UP", "B", "C4", "SIM"]
ignore = ["E501"]

[tool.ruff.lint.pydocstyle]
convention = "google"

