Self-host

Environment variables

API, auth, web, and optional LLM. Nothing here is sent to the browser except NEXT_PUBLIC_*.

API

VariableDefaultPurpose
V5_LISTEN:8080Bind address
V5_PUBLIC_URLhttp://localhost:8080Public origin for the tracker URL
DATABASE_URLlocal postgresApp connection
DATABASE_DIRECT_URLfalls back to DATABASE_URLMigrations / admin

Auth

VariableDefaultPurpose
V5_AUTH_MODEadminadmin or supabase
V5_ADMIN_EMAILadmin@localhostOperator
V5_ADMIN_PASSWORDchangemeChange this
V5_JWT_SECRETdev-secretSign dashboard tokens
SUPABASE_URLWhen mode is supabase
SUPABASE_ANON_KEYServer
SUPABASE_SERVICE_ROLE_KEYServer only — never NEXT_PUBLIC

Web

VariablePurpose
NEXT_PUBLIC_API_URLBrowser → API
NEXT_PUBLIC_SITE_URLCanonical, OG, sitemap (https://vector5.ai)
NEXT_PUBLIC_SUPABASE_URLHosted auth
NEXT_PUBLIC_SUPABASE_ANON_KEYHosted auth (publishable)

LLM

VariablePurpose
V5_LLM_PROVIDERnone | ollama | openai-compatible | anthropic | gemini
V5_LLM_MODELOverride the default model
OLLAMA_HOSTDefault http://localhost:11434
OPENAI_API_KEY / ANTHROPIC_API_KEY / GEMINI_API_KEYProvider secrets

Docs

VariablePurpose
NEXT_PUBLIC_SITE_URLhttps://docs.vector5.ai
NEXT_PUBLIC_MARKETING_URLhttps://vector5.ai

Something off? Open an issue · Edit on GitHub