Practical overview
When it fits
Use Docpaws when you need a self-hosted PDF question-answering workflow with retrieval scope controls, citations and configurable refusal behavior, and can manage its setup and model credentials.
Who it is for
- Individuals or teams who want to build a searchable assistant over their own PDF collections.
- Developers comfortable configuring a Python backend, web frontend, model credentials and supporting services.
Documented uses
- Upload PDFs and organize them into knowledge bases and folders.
- Ask questions across a full library or limit retrieval to a folder or single file.
- Review streaming answers alongside citations to retrieved sources.
- Use incremental indexing as documents are added.
- Run the included Golden 20 evaluation for repeatable RAG response checks.
Requirements & limits
The repository is public and identifies the project as MIT-licensed. The documented local setup requires LLM and embedding API credentials.
- Docpaws is self-hosted; the documented setup requires configuring and running the application.
- The stack separates the FastAPI/SQLModel backend from the Vue 3/Vite frontend, with FAISS for indexing.
- Docker Compose can provide PostgreSQL, Redis and MinIO; SQLite is described as the default when
DATABASE_URLis unset. - PDF indexing is a separate step, with the README describing an optional Celery worker for processing uploads.
- Retrieval scope and a distance threshold offer controls over which documents inform answers and when the system refuses.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Set up Docpaws for local development
Start the documented backend and web frontend locally, with the project’s optional Docker-managed services.
Before you start
- A local copy of the Docpaws repository.
- Conda or Anaconda with Python 3.11 for the backend.
- Node.js 20+ for the frontend.
- LLM and embedding API credentials.
- Docker if using the PostgreSQL, Redis and MinIO services provided through Docker Compose.
Steps
From the repository root, run the command below if you want the included PostgreSQL, Redis and MinIO services.
docker compose up -dCreate and activate a Conda environment with Python 3.11, then install backend dependencies with the command below from
backend/.pip install -r requirements.txtCopy
backend/.env.exampletobackend/.envand fill in the required API credentials and any other needed settings.From
backend/, start the API withuvicorn docpaws.main:app --reload --port 8000.From
frontend/, run the command below and the command below to start the web interface.npm installnpm run dev
Expected outcome
The README’s local development setup provides a backend at port 8000 and a frontend at port 3000, with Vite proxying `/api` to the backend.
Guide limitations
- PDF uploads require indexing; the README describes a separate Celery worker and a configured
CELERY_BROKER_URLfor that stage. - This guide covers the documented local development setup, not a production deployment.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 13 October 2026
- Original website title
- biao994/DocPaws · Official homepage title · retained in its source language

