warraqa / pyproject.toml
alhajjaj's picture
Upload pyproject.toml with huggingface_hub
c5a6c31 verified
Raw History Blame Contribute Delete
3.05 kB
[build-system]
requires = ["hatchling>=1.24"]
build-backend = "hatchling.build"
[project]
name = "warraqa"
version = "1.0.0"
description = "Warraqa (ورّاقة) — Document Scribe Agent. Converts PDFs and Word/PowerPoint files to clean Markdown with self-scoring."
readme = "README.md"
requires-python = ">=3.10"
license = { file = "LICENSE" }
authors = [
{ name = "AALAM Studio", email = "contact@aalam.consulting" },
]
maintainers = [
{ name = "AALAM Studio", email = "contact@aalam.consulting" },
]
keywords = [
"markdown",
"pdf",
"docx",
"pptx",
"ocr",
"document-conversion",
"marker",
"pymupdf",
"markitdown",
"rag",
"knowledge-base",
]
classifiers = [
# PolyForm Noncommercial is not OSI-approved, so we use the closest
# "Other/Proprietary License" classifier and surface the real terms
# via `License-File`. See LICENSE for full text.
"License :: Other/Proprietary License",
"Development Status :: 5 - Production/Stable",
"Intended Audience :: End Users/Desktop",
"Intended Audience :: Science/Research",
"Intended Audience :: Education",
"Operating System :: Microsoft :: Windows",
"Operating System :: POSIX :: Linux",
"Operating System :: MacOS",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Topic :: Office/Business",
"Topic :: Text Processing :: Markup :: Markdown",
"Topic :: Scientific/Engineering :: Artificial Intelligence",
]
dependencies = [
# Core conversion engines
"marker-pdf",
"pymupdf4llm",
"markitdown[all]",
# Configuration + console
"pyyaml",
"rich",
# File detection
"python-magic-bin; sys_platform == 'win32'",
"python-magic; sys_platform != 'win32'",
# Folder watching
"watchdog",
# Legacy .doc / .ppt pre-conversion (Windows + MS Office)
"pywin32; sys_platform == 'win32'",
]
[project.optional-dependencies]
dev = [
"ruff>=0.5",
"pytest>=8",
]
[project.urls]
Homepage = "https://github.com/AALAM-Studio/warraqa"
Repository = "https://github.com/AALAM-Studio/warraqa"
Issues = "https://github.com/AALAM-Studio/warraqa/issues"
Changelog = "https://github.com/AALAM-Studio/warraqa/blob/main/CHANGELOG.md"
"Commercial License" = "https://www.aalam.consulting/"
[project.scripts]
warraqa = "warraqa.cli:main"
[tool.hatch.build.targets.wheel]
packages = ["warraqa"]
[tool.hatch.build.targets.sdist]
include = [
"warraqa/**",
"config.yaml",
"README.md",
"LICENSE",
"CHANGELOG.md",
"CONTRIBUTING.md",
"SECURITY.md",
"CITATION.cff",
]
# --- Linting ---
[tool.ruff]
line-length = 100
target-version = "py310"
[tool.ruff.lint]
select = [
"E", # pycodestyle errors
"F", # pyflakes
"I", # isort
"B", # bugbear
"UP", # pyupgrade
]
ignore = [
"E501", # line too long — long log messages are fine
]