核心概念
配置说明
环境变量、Feature Flags 和配置管理
本页解释模板里的配置体系和环境变量约定;如果你需要查看配置常量和导出,继续看 @01mvp/config 参考。
环境变量
环境变量文件位于 apps/01mvp-web/.env.local(从 .env.example 复制并修改)。
复制示例文件
cp apps/01mvp-web/.env.example apps/01mvp-web/.env.local填写必填变量
DATABASE_URL-- PostgreSQL 数据库连接字符串BETTER_AUTH_SECRET-- 认证签名密钥(生成方式:openssl rand -base64 32)NEXT_PUBLIC_SITE_URL-- 站点公开地址(开发:http://localhost:7001,生产:https://your-domain.com)
按需添加可选变量
根据启用的功能配置:
- S3 兼容存储:
NEXT_PUBLIC_BUCKET_NAME、NEXT_PUBLIC_S3_ENDPOINT - OAuth 社交登录:
GITHUB_CLIENT_ID/SECRET、GOOGLE_CLIENT_ID/SECRET - 微信登录:
WECHAT_APP_ID、WECHAT_APP_SECRET
安全提示
.env.local 已在 .gitignore 中,不要将包含密钥的文件提交到 Git。生产环境通过部署平台的环境变量面板管理。
修改环境变量后需要重启 pnpm dev 才会生效,Next.js 不会热加载环境变量的变化。另外,只有以 NEXT_PUBLIC_ 开头的变量才会暴露给浏览器端代码。
Feature Flags
功能开关集中管理在 packages/config/src/index.ts:
i18n-- 国际化启用、默认语言、支持语言列表auth-- 是否启用邮箱/手机号/社交登录organizations-- 组织功能开关payments-- Stripe 和微信支付开关
修改对应字段后重启开发服务器生效。