PDF Desk is a Python-based application designed to search through PDF documents using PageIndex, Streamlit, and pypdfium2. The tool allows users to ask questions about a PDF and navigate directly to the specific page cited by the AI model. The application operates locally, storing indices and files on the user's computer, while document text is sent to an external API provider for processing.

The software imposes specific constraints: it supports a single active document per session, with a maximum file size of 25 MiB and a limit of 500 pages. It requires a readable text layer within the PDF, as it does not include OCR capabilities. The system architecture utilizes PDFium for document rendering and PageIndex for structural indexing, avoiding traditional vector databases in favor of reasoning-based retrieval.

To ensure compatibility, the application performs a two-stage connection check: a basic text response test and a function-calling test using a ping tool. The configuration requires Python 3.11 or newer, Git, and an OpenAI-compatible API endpoint. The project dependencies include PageIndex 0.2.20, Streamlit 1.64.0, pypdfium2 5.13.0, and PyPDF2 3.0.1.

The application provides a transparent interface where users can view both the AI's textual answer and the original page image. This feature is intended to help users verify the accuracy of the model's response, particularly when dealing with complex layouts or tables. The source code is available on GitHub, and the project includes a demo script to generate a sample PDF for testing purposes.