writekit/.env.example

80 lines
2.4 KiB
Text
Raw Normal View History

2026-01-09 00:16:46 +02:00
# =============================================================================
# CORE (Required)
# =============================================================================
# PostgreSQL connection string
DATABASE_URL=postgres://writekit:writekit@localhost:5432/writekit?sslmode=disable
# Base domain for the platform (without protocol)
DOMAIN=writekit.localhost
# Full URL for OAuth callbacks and links
BASE_URL=http://writekit.localhost
# Session cookie encryption key (min 32 characters)
SESSION_SECRET=change-this-to-a-random-32-char-string
# =============================================================================
# OAUTH (At least one required for login)
# =============================================================================
GITHUB_CLIENT_ID=
GITHUB_CLIENT_SECRET=
GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=
DISCORD_CLIENT_ID=
DISCORD_CLIENT_SECRET=
# =============================================================================
# STORAGE (Optional - for image uploads)
# =============================================================================
R2_ACCOUNT_ID=
R2_ACCESS_KEY_ID=
R2_SECRET_ACCESS_KEY=
R2_BUCKET=
R2_PUBLIC_URL=
# Custom endpoint (for MinIO/local dev, leave empty for R2)
R2_ENDPOINT=
# =============================================================================
# ANALYTICS (Optional - for Cloudflare analytics)
# =============================================================================
# Cloudflare API token with Analytics read permission
CLOUDFLARE_API_TOKEN=
# Cloudflare Zone ID for your domain
CLOUDFLARE_ZONE_ID=
# =============================================================================
# BILLING (Optional - for paid memberships)
# =============================================================================
# LemonSqueezy - https://app.lemonsqueezy.com/settings/api
LEMON_API_KEY=
LEMON_STORE_ID=
LEMON_WEBHOOK_SECRET=
# Wise (for payouts) - https://wise.com/settings/api-tokens
WISE_API_KEY=
WISE_PROFILE_ID=
# Minimum balance before payout (in cents, default: 1000 = $10)
PAYOUT_THRESHOLD_CENTS=1000
# =============================================================================
# SERVER (Optional)
# =============================================================================
# Server port (default: 8080)
PORT=8080
# SQLite data directory for tenant databases (default: ./data)
DATA_DIR=./data
# Environment: prod, staging, or dev (affects some behaviors)
ENV=dev