[project] name = "classlens-backend" version = "2.0.0" description = "ClassLens: AI-powered exam analysis for teachers" requires-python = ">=3.10" dependencies = [ "fastapi>=0.114,<0.116", "uvicorn[standard]>=0.36,<0.37", "openai>=1.40", "python-jose[cryptography]>=3.3.0", "bcrypt>=4.0.0", "python-multipart>=0.0.6", "python-dotenv>=1.0.0", "aiosqlite>=0.19.0", "cryptography>=41.0.0", "pydantic>=2.0.0", "httpx>=0.25.0", "pymupdf>=1.23.0", "pdfplumber>=0.11.0", ] [project.optional-dependencies] dev = [ "ruff>=0.6.4,<0.7", "pytest>=7.4.0", "pytest-asyncio>=0.21.0", ] [build-system] requires = ["setuptools>=68.0", "wheel"] build-backend = "setuptools.build_meta" [tool.setuptools.packages.find] include = ["app*"] exclude = ["static*", "tests*"] [tool.pytest.ini_options] markers = [ "unit: marks tests as unit tests", "integration: marks tests as integration tests", ] asyncio_mode = "auto"