Ctrl K
ComunidadGuías…

pyproject.toml

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
# Pacchetto installabile di Tabularium (`uv tool install tabularium`).
#
# La wheel contiene il backend (`backend/app`) e, in `app/_bundle/`, le
# risorse che da un checkout stanno nella radice della repo: VERSION,
# l'interfaccia già compilata, gli script consegnati alle GPU e i profili.
# `config.py` le cerca lì quando l'app è installata.
#
# Prima del build serve `frontend/dist`: `npm ci && npm run build` in frontend/.
# Le dipendenze runtime devono restare allineate a backend/requirements.txt
# (lo verifica tests/test_packaging.py).

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

[project]
name = "tabularium"
dynamic = ["version"]
description = "State-of-the-art OCR and fine-tuning for historical documents, made simple for researchers."
readme = "README.md"
license = "MIT"
license-files = ["LICENSE"]
authors = [{ name = "Nicolò Badino" }]
requires-python = ">=3.11,<3.14"
keywords = ["ocr", "historical-documents", "digital-humanities", "document-ai", "table-recognition", "vlm", "fine-tuning"]
classifiers = [
    "Development Status :: 4 - Beta",
    "Intended Audience :: Science/Research",
    "Operating System :: OS Independent",
    "Programming Language :: Python :: 3.11",
    "Programming Language :: Python :: 3.12",
    "Programming Language :: Python :: 3.13",
    "Topic :: Scientific/Engineering :: Image Recognition",
    "Topic :: Text Processing :: General",
]
dependencies = [
    "fastapi>=0.141,<1",
    "uvicorn[standard]>=0.52,<1",
    "pydantic>=2.13,<3",
    "pillow>=12,<13",
    "numpy>=2,<3",
    "apted>=1.0.3,<2",
    "rapidfuzz>=3,<4",
    "requests>=2.32,<3",
    "rapidocr>=3,<4",
    "onnxruntime>=1.17,<2",
    "httpx>=0.28,<1",
    "python-dotenv>=1.0,<2",
    "python-multipart>=0.0.20,<1",
    "cryptography>=44,<51",
    "huggingface-hub>=0.27,<1",
]

[project.scripts]
tabularium = "app.cli:main"

[project.urls]
Homepage = "https://github.com/nbadino/tabularium"
Documentation = "https://nbadino.github.io/tabularium/"
Changelog = "https://github.com/nbadino/tabularium/blob/main/CHANGELOG.md"
Issues = "https://github.com/nbadino/tabularium/issues"

[tool.hatch.version]
path = "VERSION"
pattern = "(?P<version>[^\\s]+)"

[tool.hatch.build.targets.wheel]
packages = ["backend/app"]
exclude = ["**/__pycache__", "**/_bundle"]

[tool.hatch.build.targets.wheel.force-include]
"VERSION" = "app/_bundle/VERSION"
"frontend/dist" = "app/_bundle/frontend/dist"
"conf" = "app/_bundle/conf"
"scripts/cloud" = "app/_bundle/scripts/cloud"
"scripts/local" = "app/_bundle/scripts/local"
"scripts/serve_model.sh" = "app/_bundle/scripts/serve_model.sh"