Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
69 changes: 69 additions & 0 deletions .env.cloudflare.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
# Cap Cloudflare Deployment Environment Variables
# Copy this file to .env and fill in your values

# === Core Configuration ===
NODE_ENV=production
WEB_URL=https://cap.so
NEXTAUTH_SECRET=your-secret-here-min-32-chars
NEXTAUTH_URL=https://cap.so

# === Database Configuration ===
DATABASE_URL=mysql://user:password@host:port/database
DATABASE_ENCRYPTION_KEY=your-encryption-key-here

# === Cloudflare R2 Storage ===
# Get these from: Cloudflare Dashboard → R2 → Manage R2 API Tokens
CAP_AWS_BUCKET=cap-videos-prod
CAP_AWS_REGION=auto
CAP_AWS_ACCESS_KEY=your-r2-access-key-id
CAP_AWS_SECRET_KEY=your-r2-secret-access-key
# Replace YOUR_ACCOUNT_ID with your Cloudflare account ID
CAP_AWS_ENDPOINT=https://YOUR_ACCOUNT_ID.r2.cloudflarestorage.com
# Your custom domain for R2 (set up in R2 dashboard)
CAP_AWS_BUCKET_URL=https://cdn.cap.so
S3_PUBLIC_ENDPOINT=https://YOUR_ACCOUNT_ID.r2.cloudflarestorage.com
S3_INTERNAL_ENDPOINT=https://YOUR_ACCOUNT_ID.r2.cloudflarestorage.com
S3_PATH_STYLE=true

# === AI Services (Optional) ===
GROQ_API_KEY=your-groq-api-key
OPENAI_API_KEY=your-openai-api-key
DEEPGRAM_API_KEY=your-deepgram-api-key

# === Email Service (Optional) ===
RESEND_API_KEY=your-resend-api-key
RESEND_FROM_DOMAIN=yourdomain.com

# === Analytics (Optional) ===
NEXT_PUBLIC_POSTHOG_KEY=your-posthog-key
NEXT_PUBLIC_POSTHOG_HOST=https://app.posthog.com
POSTHOG_PERSONAL_API_KEY=your-posthog-personal-key

# === OAuth Providers (Optional) ===
GOOGLE_CLIENT_ID=your-google-client-id
GOOGLE_CLIENT_SECRET=your-google-client-secret
WORKOS_CLIENT_ID=your-workos-client-id
WORKOS_API_KEY=your-workos-api-key

# === Payment Processing (Optional) ===
STRIPE_SECRET_KEY_TEST=your-stripe-test-key
STRIPE_SECRET_KEY_LIVE=your-stripe-live-key
STRIPE_WEBHOOK_SECRET=your-stripe-webhook-secret

# === Cloudflare Specific ===
NEXT_PUBLIC_WEB_URL=https://cap.so

# === OpenTelemetry (Optional) ===
AXIOM_API_TOKEN=your-axiom-token
AXIOM_DOMAIN=your-axiom-domain
AXIOM_DATASET=your-axiom-dataset

# === Dub.co Link Shortening (Optional) ===
DUB_API_KEY=your-dub-api-key

# === Workflows (for web-cluster) ===
WORKFLOWS_RPC_SECRET=your-rpc-secret

# === CDN Signing (if using CloudFront) ===
# CLOUDFRONT_KEYPAIR_ID=your-keypair-id
# CLOUDFRONT_KEYPAIR_PRIVATE_KEY=your-private-key
Loading