chore: initialize WiseGrade project
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
.venv/
|
||||
.pytest_cache/
|
||||
__pycache__/
|
||||
*.pyc
|
||||
tests/
|
||||
*.db
|
||||
*.sqlite3
|
||||
.env
|
||||
@@ -0,0 +1,9 @@
|
||||
FROM python:3.11-slim
|
||||
ENV PYTHONDONTWRITEBYTECODE=1 PYTHONUNBUFFERED=1 HF_HUB_OFFLINE=1 TRANSFORMERS_OFFLINE=1
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends libreoffice poppler-utils fonts-noto-cjk libpango-1.0-0 libpangoft2-1.0-0 libgl1 libglib2.0-0 && rm -rf /var/lib/apt/lists/*
|
||||
WORKDIR /app
|
||||
COPY --from=ghcr.io/astral-sh/uv:0.11.0 /uv /uvx /bin/
|
||||
COPY pyproject.toml uv.lock ./
|
||||
RUN uv sync --frozen --no-dev --extra ocr
|
||||
COPY . .
|
||||
ENV PATH=/app/.venv/bin:$PATH PYTHONPATH=/app
|
||||
@@ -0,0 +1,27 @@
|
||||
[project]
|
||||
name = "wisegrade-backend"
|
||||
version = "0.1.0"
|
||||
description = "WiseGrade teacher-only scoring backend"
|
||||
requires-python = ">=3.10,<3.13"
|
||||
dependencies = [
|
||||
"fastapi>=0.115,<0.125", "starlette>=0.40,<0.50", "uvicorn[standard]>=0.34,<1", "sqlalchemy>=2,<3",
|
||||
"alembic>=1.14,<2", "psycopg[binary]>=3.2,<4", "pgvector>=0.4,<1",
|
||||
"pydantic-settings>=2,<3", "redis>=5,<7", "rq>=2,<3",
|
||||
"pymupdf>=1.25,<2", "python-docx>=1.1,<2", "python-pptx>=1,<2",
|
||||
"pillow>=11,<13", "sentence-transformers>=4,<6", "torch>=2.3,<3", "httpx>=0.28,<1",
|
||||
"cryptography>=44,<48", "openpyxl>=3.1,<4", "weasyprint>=64,<70",
|
||||
]
|
||||
[dependency-groups]
|
||||
dev = ["pytest>=8,<10"]
|
||||
[project.optional-dependencies]
|
||||
ocr = ["paddleocr>=2.9,<4", "paddlepaddle>=2.6,<4"]
|
||||
[tool.uv.sources]
|
||||
torch = { index = "pytorch-cpu" }
|
||||
[[tool.uv.index]]
|
||||
name = "pytorch-cpu"
|
||||
url = "https://download.pytorch.org/whl/cpu"
|
||||
explicit = true
|
||||
[tool.pytest.ini_options]
|
||||
testpaths = ["tests"]
|
||||
pythonpath = ["."]
|
||||
markers = ["integration: tests using bundled course examples"]
|
||||
Generated
+3501
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user