Overview

Docuvate combines a web app, API, and extraction service. This page covers operations, concepts, and self-hosting.

Quickstart with Docker Compose

  1. Clone the repository and copy .env.example to .env.
  2. Set secrets: BETTER_AUTH_SECRET (32+ characters), DOCUVATE_CONNECTOR_SECRETS_KEY.
  3. Run docker compose up --build at the repo root. Web on port 5173, API on 3001.
  4. Register the first user in the web UI and upload a test document.

Concepts

Documents

Each file has status, preview, extracted text, and metadata. Bytes live in MinIO; metadata in PostgreSQL.

Labels

Free-form tags with colors. Recommendations suggest assignments; you accept or ignore them.

Folders

Hierarchical filing (filesystem). Documents may appear in multiple folders.

Recognized fields

Settings define which fields to look for. Suggestions appear with a confidence hint.

Chat

Per-document conversations. Choose how answers are generated in settings.

Connections

Connections link sources such as S3 or mail. Credentials are stored encrypted.

Self-hosting configuration

Variables from `.env.example`. Values shown are local development defaults.

Database and cache

VariableDescription
DATABASE_URLPostgreSQL connection for API and migrations.
VALKEY_URLValkey (Redis-compatible) for queues and cache.

Object storage

VariableDescription
MINIO_ENDPOINTHostname of the S3-compatible endpoint.
MINIO_PORTPort of the storage service.
MINIO_ACCESS_KEYAccess key for buckets.
MINIO_SECRET_KEYSecret key for buckets.
MINIO_BUCKETBucket name for document files (for example documents).

Auth and web

VariableDescription
BETTER_AUTH_SECRETSigning secret for sessions (long, random).
BETTER_AUTH_URLPublic API URL for auth callbacks.
WEB_ORIGINAllowed browser origin for CORS and cookies.
VITE_API_URLAPI base for the web app dev build.

Extraction and chat

VariableDescription
WORKER_URLInternal URL of the extraction service.
WORKER_SECRETShared secret between API and extraction service.
DOCUMENT_CHAT_PROVIDERChat backend for document Q&A.
OLLAMA_URLOptional endpoint for local language models.
OLLAMA_MODELOptional model name for local answers.

Service API and connections

VariableDescription
DOCUVATE_SERVICE_API_KEYSJSON array with keyId, secret, tenantUserId, claims.
DOCUVATE_CONNECTOR_SECRETS_KEYAES key for connection secrets.
DOCUVATE_GMAIL_OAUTH_CLIENT_IDOptional for Gmail connection.
DOCUVATE_OUTLOOK_OAUTH_CLIENT_IDOptional for Outlook connection.