快速开始
安装、初始化本地 D1,登录工作台并完成文件和邮件验证。
目标是在本机完成第一次登录,不连接正式支付、不创建远程 Cloudflare 资源。命令均在 Flare 仓库根目录执行。还没有源码请先看获取源码。
1. 检查工具与端口
node --version
pnpm --version
pnpm install --frozen-lockfile使用 Node.js 22.12+、pnpm 10.26.2。官网和原 MuseMVP 默认也可能占用 3000;先停止另一个本地应用。首次不要把监听地址 127.0.0.1 与认证 origin localhost 混用。
2. 初始化本地状态
pnpm muse:init此命令生成/保留 apps/web/.dev.vars 中的本地认证密钥,应用本地 D1 迁移,并插入开发用户。已有账号和密钥不会因为重复 init 被改写。根 .env 由 CLI 统一读取,但 init 的资源操作始终是本地,不接受 --target。
如果需要自己的 seed 密码,在第一次 init 前设置至少 8 字符的 MUSE_SEED_PASSWORD。PowerShell 示例:
$env:MUSE_SEED_PASSWORD = "CHOOSE_A_LOCAL_PASSWORD"
pnpm muse:init改这个变量不会重设已经创建的用户密码。已有账号忘记密码时,用本地重置流程或另建隔离开发状态,不要删除生产数据。
3. 启动应用
pnpm dev等待 Vite 与 Paraglide 生成完成,打开 http://localhost:3000。中文入口为 /zh。生产示例在 flare.musemvp.com,但它不使用下面的本地账号。
| 本地邮箱 | 默认密码 | 可访问内容 |
|---|---|---|
[email protected] | musemvp-local | 工作台、文件、个人设置 |
[email protected] | musemvp-local | 上述功能及 /app/admin |
若首次初始化前设置过密码,以你的值为准。这些账号不会在远程部署时创建。
4. 完成第一条可见流程
- 默认
/auth/login使用邮箱验证码:输入本地邮箱发送验证码,在/dev/mail查看,再返回输入最新的六位验证码。已有账号登录,新邮箱可创建账号。 - 若使用上表 seed 密码,先选择“使用密码”进入
/auth/password,用普通账号登录后进入/app。 - 打开
/app/files,上传一个小于 1 MiB 的 TXT 文件,确认列表出现记录;下载后内容应相同,再删除。 - 打开
/app/settings,修改名字并保存,刷新后仍存在。 - 退出后访问
/app,应回到登录页;普通账号不能进入 Admin。
要验证注册邮件,请使用新邮箱在 /auth/register 注册,打开 /dev/mail 刷新,跟随对应验证链接。密码重置邮件也在这里查看,不会真正投递到外部邮箱。
默认可做与需另外接通的功能
本地 D1/R2 和开发邮件可用于首跑;支付保持关闭。Workers AI 无本地模型模拟器,Vite 配置默认 remoteBindings: false。不要把 AI 缺少远端模型当作本地初始化失败;真实 AI、OAuth、Turnstile 和商户测试分别按对应指南配置。
确认结果
- 首页、登录和中英文工作台可打开,没有 hydration 错误。
- 普通用户的文件/设置可保存,管理员入口按角色隔离。
- 新注册账号验证前不能绕过邮箱要求。
/dev/mail只在开发环境存在;它不应成为线上验收入口。
常见问题
| 现象 | 处理 |
|---|---|
| 缺少路由或 Paraglide 生成文件 | 运行 pnpm dev 或 pnpm build,不要手写生成目录 |
| D1 缺表 | 核对当前仓库后重跑 pnpm muse:init,检查迁移错误 |
| 密码不对 | 区分首次 seed 密码、已存在用户和公共演示站 |
| 登录出现 Invalid origin | 使用 localhost:3000,核对本地 APP_URL 与实际浏览器 origin |
| 提示 Cloudflare 凭据缺失 | 首跑不运行部署命令;检查是否误启用了远程服务 |
| 同步构建后 preview 无法登录 | 先初始化本地,再构建;确认复制的本地变量与运行地址一致 |
下一步按品牌配置换成自己的产品。