DocuGardenerDocs

Self-Hosting Guide

Run DocuGardener on your own infrastructure — completely free under the AGPL-3.0 license.

DocuGardener is released under the GNU Affero General Public License v3.0 (AGPL-3.0). You can clone the repository, deploy it on your own servers, and use every feature without paying a license fee. The SaaS at docugardener.dev exists for teams who prefer a managed, zero-ops experience.

When to Self-Host vs. Use SaaS

ConsiderationSelf-HostedSaaS
Data residencyFull control — deploy anywhereEU (Hetzner)
Air-gapped networksSupported (use Ollama for LLM)Not possible
Operational burdenYou manage infra, backups, upgradesZero-ops
CostFree (your infra costs only)Free / $29 / $79 per month
LLM choiceAny provider including local OllamaBYOK — bring your own key
Plan limitsNone (set QUOTA_OVERRIDE=unlimited)Per plan tier

Architecture Overview

DocuGardener is composed of two planes that communicate over a shared PostgreSQL database and Redis message queue:

Control Plane

Next.js App Router application with Prisma ORM. Handles authentication (NextAuth), the dashboard UI, GitHub App management, team/RBAC, and billing. Connects to PostgreSQL.

Analysis Plane

Python FastAPI service with RQ (Redis Queue) workers. Receives GitHub webhooks, clones repositories, performs AST parsing, generates vector embeddings (Weaviate), and runs LLM-powered drift analysis. Connects to PostgreSQL, Redis, and Weaviate.

Deployment Modes

ModeBest ForGuide
Development (Docker Compose)Local development, evaluation, small teamsDocker Compose guide
Production (VPS + Caddy)Single-server production, small to medium teamsComing soon
Enterprise (Kubernetes / Helm)High availability, horizontal scaling, enterprise complianceComing soon

Removing Plan Limits

Self-hosted installations can remove all plan-based quotas by setting a single environment variable:

QUOTA_OVERRIDE=unlimited

With this set, there are no limits on the number of PR analyses, repositories, or team seats regardless of the plan tier shown in the dashboard.

Next Steps