Skip to content

Repository is not installable as a Python package (missing pyproject.toml) #103

@clstaudt

Description

@clstaudt

Description:

The pageindex/ directory is a well-structured Python package with __init__.py and clean exports, but the repository cannot be installed via pip install git+https://github.com/VectifyAI/PageIndex.git because it lacks a pyproject.toml (or setup.py) at the root.

This means downstream projects cannot declare PageIndex as a dependency. The only workaround is cloning the repo and manually adding it to sys.path or vendoring it as a git submodule.

This also affects uv. uv supports git dependencies in pyproject.toml like:

"pageindex @ git+https://github.com/VectifyAI/PageIndex.git@main"

but uv sync fails with:

/Users/.../.cache/uv/git-v0/checkouts/.../884209e does not appear to be a Python project, as neither pyproject.toml nor setup.py are present in the directory

Suggested fix:

Add a pyproject.toml at the repository root. A minimal version:

[project]
name = "pageindex"
version = "0.1.0"
description = "Vectorless, reasoning-based RAG via hierarchical document tree indexing"
readme = "README.md"
license = { text = "MIT" }
requires-python = ">=3.7"
dependencies = [
    # mirror requirements.txt
]

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

This would make the repo installable via both pip and uv as a proper git dependency, which is the standard expectation for a Python project hosted on GitHub.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions