# Linkwarden Configuration # Docs: https://docs.linkwarden.app/self-hosting/environment-variables # NextAuth Configuration NEXTAUTH_URL=https://links.fig.systems # Generate with: openssl rand -hex 32 # Example format: e4f5g6h789012abcdef345678901a2b3c4d5e6f78901abcdef2345678901abcde NEXTAUTH_SECRET=changeme_please_set_random_secret_key # Database Configuration # Generate with: openssl rand -base64 32 | tr -d /=+ | cut -c1-32 # Example format: eF7gH0iI3jK5lM8nO1pQ4rS7tU0vW3xY POSTGRES_PASSWORD=changeme_please_set_secure_postgres_password POSTGRES_USER=postgres POSTGRES_DB=postgres DATABASE_URL=postgresql://postgres:${POSTGRES_PASSWORD}@linkwarden-postgres:5432/postgres # Meilisearch (search engine) # Generate with: openssl rand -hex 16 # Example format: f6g7h8i901234abcdef567890a1b2c3d MEILI_MASTER_KEY=changeme_please_set_meili_master_key # Timezone TZ=America/Los_Angeles # Optional: Registration Control # NEXT_PUBLIC_DISABLE_REGISTRATION=true # Optional: Credentials Authentication # NEXT_PUBLIC_CREDENTIALS_ENABLED=true # Optional: Pagination # PAGINATION_TAKE_COUNT=20 # Optional: Storage folder (for screenshots/PDFs) # STORAGE_FOLDER=data # Optional: Limits # MAX_LINKS_PER_USER=unlimited # NEXT_PUBLIC_MAX_FILE_BUFFER=10485760 # 10MB in bytes # PDF_MAX_BUFFER=10485760 # SCREENSHOT_MAX_BUFFER=10485760 # Optional: Browser timeout for archiving (in milliseconds) # BROWSER_TIMEOUT=30000 # AUTOSCROLL_TIMEOUT=30 # Optional: Archive settings # ARCHIVE_TAKE_COUNT=5 # Optional: Security # IGNORE_UNAUTHORIZED_CA=false # IGNORE_HTTPS_ERRORS=false # IGNORE_URL_SIZE_LIMIT=false # Optional: SSO Settings # DISABLE_NEW_SSO_USERS=false # Optional: Demo Mode # NEXT_PUBLIC_DEMO=false # NEXT_PUBLIC_DEMO_USERNAME= # NEXT_PUBLIC_DEMO_PASSWORD= # Optional: Admin Panel # NEXT_PUBLIC_ADMIN=false