lllin000_PaperForge/pyproject.toml
Research Assistant 9496382e81 feat(01-02): implement CLI launcher, packaging entry point, and shared config resolver
- paperforge_lite/cli.py: argparse CLI with global --vault, subcommands paths/status/selection-sync/index-refresh/deep-reading/ocr (ocr defaults to run action)
- paperforge_lite/__main__.py: python -m paperforge_lite fallback entry point
- paperforge_lite/config.py: shared resolver (load_vault_config, resolve_vault, paperforge_paths, paths_as_strings, load_simple_env) matching Plan 01 contract
- pyproject.toml: setuptools build, paperforge-lite package, Python >=3.10, dependencies from requirements.txt, [project.scripts] paperforge=paperforge_lite.cli:main
- paperforge_lite/__init__.py: package init (version 1.0.0)

CLI loads .env from vault root and <system_dir>/PaperForge/.env before worker dispatch, matching legacy pipeline behavior.
2026-04-23 11:44:26 +08:00

47 lines
1.2 KiB
TOML

[build-system]
requires = ["setuptools>=68.0"]
build-backend = "setuptools.build_meta"
[project]
name = "paperforge-lite"
version = "1.0.0"
description = "PaperForge Lite — Obsidian + Zotero literature pipeline CLI"
readme = "README.md"
requires-python = ">=3.10"
license = {text = "MIT"}
authors = [
{name = "PaperForge Contributors"}
]
classifiers = [
"Development Status :: 4 - Beta",
"Environment :: Console",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Topic :: Scientific/Engineering :: Information Analysis",
]
dependencies = [
"requests>=2.31.0",
"pymupdf>=1.23.0",
"pillow>=10.0.0",
"textual>=0.47.0",
]
[project.optional-dependencies]
test = [
"pytest>=7.4.0",
]
[project.scripts]
paperforge = "paperforge_lite.cli:main"
[tool.setuptools.packages.find]
where = ["."]
include = ["paperforge_lite*"]
[tool.setuptools.package-data]
paperforge_lite = ["py.typed"]