{"repo":"sabbaken/paperless-starfruit","free":true,"listed":false,"github":"https://github.com/sabbaken/paperless-starfruit","clone":"git clone https://github.com/sabbaken/paperless-starfruit.git","description":"A self-hosted, bring-your-own-keys AI companion for paperless-ngx","language":"TypeScript","stars":54,"topics":[],"license":"AGPL-3.0","category":"self-hosted-apps","readme_excerpt":"Paperless Starfruit A self-hosted, bring-your-own-keys AI companion for paperless-ngx: better OCR and automatic titles, tags, correspondents and dates, configured entirely from a web UI. Website · Docs · Install Stack - Monorepo: Turborepo + pnpm - Backend: NestJS (HTTP API + cron poller + in-process worker), SQLite via Drizzle, self-written table queue - Frontend: React + Vite + TanStack Query + Tailwind - AI gateway: Vercel AI SDK (structured output via Zod) Layout How it works 1. You tag a document in paperless-ngx with psf-process . 2. The poller picks it up, OCRs it (optional) and asks an LLM for a title, tags, correspondent and date. 3. Depending on the Auto-apply setting, the result is either written straight back to paperless (and the trigger tag removed), or queued in the Review screen for you to approve/edit/reject. Everything is configured in the web UI: the paperless connection, provider keys, models, prompts, page limits, the polling interval. The only thing set outside the UI is a handful of environment variables for the process itself (below). Deploy (self-hosting) A single container, no Postgres/Redis. SQLite lives on a mounted volume. Pre-built images are published to GitHub Container Registry on every GitHub release (the release tag names the image version), so there is nothing to clone or build: Two compose files, depending on where you start (full walkthrough in the installation docs): Already running paperless-ngx Use docker/docker-compose.yml (just the S","default_branch":null,"files":null,"tree":[],"storefront":"/r/sabbaken","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/sabbaken/paperless-starfruit/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}