|
1 | 1 | # Build-time environment variables for CNB pipeline |
2 | 2 | # These are public values that can be safely committed to git |
3 | 3 |
|
| 4 | +# ============================================ |
| 5 | +# Site / Application URLs |
| 6 | +# ============================================ |
| 7 | + |
4 | 8 | # Site URL - used for static generation, sitemap, SEO, etc. |
5 | 9 | NEXT_PUBLIC_SITE_URL= |
6 | 10 |
|
7 | | -# Public S3 bucket configuration ( Tencent Cloud COS ) |
| 11 | +# Application URL - used for email links, redirects, etc. Falls back to NEXT_PUBLIC_SITE_URL. |
| 12 | +NEXT_PUBLIC_APP_URL= |
| 13 | + |
| 14 | +# Public API URL (optional, defaults to NEXT_PUBLIC_SITE_URL if not set) |
| 15 | +NEXT_PUBLIC_API_URL= |
| 16 | + |
| 17 | +# ============================================ |
| 18 | +# Database |
| 19 | +# ============================================ |
| 20 | + |
| 21 | +# PostgreSQL connection string for Prisma |
| 22 | +DATABASE_URL= |
| 23 | + |
| 24 | +# ============================================ |
| 25 | +# Authentication (Better Auth) |
| 26 | +# ============================================ |
| 27 | + |
| 28 | +# Auth secret - generate with: openssl rand -hex 32 |
| 29 | +BETTER_AUTH_SECRET= |
| 30 | + |
| 31 | +# Auth URL - must match your app's base URL (e.g., http://localhost:3000 for dev) |
| 32 | +BETTER_AUTH_URL= |
| 33 | + |
| 34 | +# Trusted Origins (comma-separated list of domains allowed for auth) |
| 35 | +TRUSTED_ORIGINS= |
| 36 | + |
| 37 | +# GitHub OAuth |
| 38 | +GITHUB_CLIENT_ID= |
| 39 | +GITHUB_CLIENT_SECRET= |
| 40 | + |
| 41 | +# Google OAuth |
| 42 | +GOOGLE_CLIENT_ID= |
| 43 | +GOOGLE_CLIENT_SECRET= |
| 44 | + |
| 45 | +# WeChat Website Login |
| 46 | +WECHAT_WEBSITE_APP_ID= |
| 47 | +WECHAT_WEBSITE_APP_SECRET= |
| 48 | + |
| 49 | +# WeChat Service Account |
| 50 | +WECHAT_SERVICE_ACCOUNT_APP_ID= |
| 51 | +WECHAT_SERVICE_ACCOUNT_APP_SECRET= |
| 52 | + |
| 53 | +# ============================================ |
| 54 | +# Storage (Tencent Cloud COS / S3-compatible) |
| 55 | +# ============================================ |
| 56 | + |
| 57 | +S3_ACCESS_KEY_ID= |
| 58 | +S3_SECRET_ACCESS_KEY= |
| 59 | +S3_ENDPOINT= |
| 60 | +S3_REGION= |
| 61 | + |
| 62 | +# Public S3 bucket configuration (Tencent Cloud COS) |
8 | 63 | # Bucket has public read, private write permissions |
9 | 64 | NEXT_PUBLIC_BUCKET_NAME= |
10 | 65 | NEXT_PUBLIC_S3_ENDPOINT= |
| 66 | + |
| 67 | +# ============================================ |
| 68 | +# Email |
| 69 | +# ============================================ |
| 70 | + |
| 71 | +PLUNK_API_KEY= |
| 72 | + |
| 73 | +# Enable real email sending in development |
| 74 | +ENABLE_EMAIL_IN_DEV=true |
| 75 | + |
| 76 | +# ============================================ |
| 77 | +# Tencent Cloud (SMS, Content Moderation, etc.) |
| 78 | +# ============================================ |
| 79 | + |
| 80 | +TENCENT_CLOUD_SECRET_ID= |
| 81 | +TENCENT_CLOUD_SECRET_KEY= |
| 82 | +TENCENT_CLOUD_REGION=ap-shanghai |
| 83 | + |
| 84 | +# SMS configuration |
| 85 | +TENCENT_SMS_REGION=ap-guangzhou |
| 86 | +TENCENT_SMS_SDK_APP_ID= |
| 87 | +TENCENT_SMS_SIGN_NAME= |
| 88 | +TENCENT_SMS_TEMPLATE_ID= |
| 89 | +TENCENT_SMS_EVENT_APPROVED_TEMPLATE_ID= |
| 90 | +TENCENT_SMS_EVENT_REJECTED_TEMPLATE_ID= |
| 91 | + |
| 92 | +# Content Moderation biztype |
| 93 | +TENCENT_CMS_BIZTYPE=content_input |
| 94 | + |
| 95 | +# ============================================ |
| 96 | +# AI / OpenAI-compatible API |
| 97 | +# ============================================ |
| 98 | + |
| 99 | +OPENAI_API_KEY= |
| 100 | +OPENAI_BASE_URL= |
| 101 | +OPENAI_MODEL= |
| 102 | + |
| 103 | +# ============================================ |
| 104 | +# Analytics |
| 105 | +# ============================================ |
| 106 | + |
| 107 | +# Priority: Umami > Google Analytics > Baidu Analytics |
| 108 | +# Umami (privacy-friendly, open-source) |
| 109 | +NEXT_PUBLIC_UMAMI_WEBSITE_ID= |
| 110 | +NEXT_PUBLIC_UMAMI_SCRIPT_URL=https://cloud.umami.is/script.js |
| 111 | + |
| 112 | +# Google Analytics (optional) |
| 113 | +NEXT_PUBLIC_GOOGLE_ANALYTICS_ID= |
| 114 | + |
| 115 | +# Baidu Analytics (optional) |
| 116 | +NEXT_PUBLIC_BAIDU_ANALYTICS_ID= |
| 117 | + |
| 118 | +# ============================================ |
| 119 | +# Telemetry & Debug |
| 120 | +# ============================================ |
| 121 | + |
| 122 | +# Set to 1 to disable Next.js telemetry |
| 123 | +NEXT_TELEMETRY_DISABLED=1 |
| 124 | + |
| 125 | +# Suppress punycode deprecation warning from Prisma |
| 126 | +NODE_OPTIONS=--no-deprecation |
| 127 | + |
| 128 | +# Disable verbose HTTP request logging in development |
| 129 | +DISABLE_HTTP_LOGGING=false |
0 commit comments