Infrastructure

Deployment Options

One codebase. Three deployment tiers. From a personal laptop to a horizontally-scaled enterprise cluster — no vendor lock-in, no cloud dependency.

Free

Local

Zero infrastructure. Full power.

Run hRAG on any machine with Node.js. SQLite stores relational data. LanceDB runs locally. No cloud accounts, no configuration overhead. Deploy in under 5 minutes.

Database SQLite (Drizzle ORM)
Vector Store LanceDB (local)
Object Storage Local filesystem
Replication None
HA
Multi-node

Prerequisites

Node.js 20+npm~512 MB RAM

Key Env Vars

HRAG_MASTER_PASSPHRASEJWT_SECRETDATABASE_URL
Read Quick Start →
Recommended

Self-Hosted

Production-grade on a single server.

One VPS running Garage S3-compatible object storage, Litestream for SQLite replication to S3, and LanceDB with S3-native vector storage. Stateless compute, durable data.

Database SQLite + Litestream → S3
Vector Store LanceDB (S3-native)
Object Storage Garage S3
Replication Litestream (continuous)
HA Partial (S3-backed)
Multi-node

Prerequisites

Node.js 20+Garage or MinIOLitestream

Key Env Vars

HRAG_MASTER_PASSPHRASES3_ENDPOINTS3_ACCESS_KEYS3_SECRET_KEYLITESTREAM_*
View Self-Hosted Guide →
Enterprise

Enterprise

Horizontal scale. Full HA.

Multi-node cluster with primary election (HRAG_PRIMARY=true). PostgreSQL + pgvector (or Qdrant) for relational + vector data. BullMQ for distributed ingestion queues. Fully horizontally scalable.

Database PostgreSQL (Drizzle ORM)
Vector Store pgvector, Qdrant, or LanceDB
Object Storage Garage S3 / AWS S3
Replication PostgreSQL native + S3
HA ✅ Full
Multi-node ✅ Unlimited

Prerequisites

Node.js 20+PostgreSQL 16+Redis (BullMQ)Garage / AWS S3

Key Env Vars

HRAG_PRIMARY=trueDATABASE_URL (pg)REDIS_URLS3_*
Read Architecture Docs →

Full Comparison

CapabilityLocalSelf-HostedEnterprise
DatabaseSQLiteSQLite + LitestreamPostgreSQL
Vector StoreLanceDB (local)LanceDB (S3)pgvector / Qdrant
Object StorageLocal FSGarage S3Garage / AWS S3
ReplicationLitestreamPostgreSQL + S3
HAPartial
Multi-node
OCR WorkersInline (Worker Thread)InlineBullMQ distributed
Ingestion QueueBullMQ + Redis
Min RAM512 MB1 GB4 GB+

All tiers use the same SvelteKit/Node.js codebase. Database driver selected via DATABASE_URL prefix (sqlite:// vs postgresql://).

Upgrading between tiers?

All structural upgrade procedures — including relational schema migrations, vector store re-indexing, and Litestream configuration — are documented in UPGRADE.md at the project root.

Read UPGRADE.md →