Monorepo:
web/:用户站(Vite + Three.js,可部署 GitHub Pages)server/:本机订单服务(Express + SQLite + 本地存图)admin/:管理后台(订单 / 支付 / 导出)
cd web
npm i
npm run dev访问地址通常为 http://localhost:5173/yinxiang-3d/。
cd web
npm test
npm run build
npm run preview右上角可切换:中文、English、Français、Español、ខ្មែរ、ไทย、Tiếng Việt、Indonesia。
偏好保存在 localStorage(yinxiang.locale)。
复制 web/.env.example 为 web/.env:
VITE_PREVIEW_ONLY=true:仅预览(Pages 默认)VITE_PREVIEW_ONLY=false:启用下单支付(需本机server)VITE_API_BASE=http://localhost:8787
cd server
cp .env.example .env
npm i
npm test
npm run dev默认:
- 地址:
http://localhost:8787 - 管理员:
admin/changeme(请立刻改.env) - 支付:
PAYMENT_PROVIDER=mock
说明:数据库使用 Node 内置 node:sqlite(适配本机 Node 26;不依赖 better-sqlite3 原生编译)。
cd admin
cp .env.example .env
npm i
npm run dev打开 http://localhost:5174/,登录后可查看订单、支付流水、多选导出 zip。
用户站不放后台入口。
# web/.env
VITE_PREVIEW_ONLY=false
VITE_API_BASE=http://localhost:8787cd web
npm run dev流程:上传图片 → 填写姓名电话 → 提交并支付 → mock 跳转完成回调 → 后台可见 paid → 导出 zip。
也可在仓库根目录:
npm run dev:server
npm run dev:admin
npm run dev:webPAYMENT_PROVIDER |
行为 |
|---|---|
mock |
本机模拟支付(默认) |
facebook / meta |
读取 Meta 环境变量;未配置则自动回退 mock |
aba |
预留适配器,调用时提示待配置 |
新增渠道:实现与 mockPay.js 相同接口,并在 resolvePaymentProvider 注册即可。
线上:https://<用户名>.github.io/yinxiang-3d/
- Settings → Pages → Source 选 GitHub Actions
- 推送
main且变更web/**时自动:npm test→npm run build→ 发布 - 线上强制
VITE_PREVIEW_ONLY=true,不接真实下单
工作流:.github/workflows/deploy-web.yml
路径配置:web/vite.config.js 的 base: '/yinxiang-3d/'
- 阶段 1:3D 预览、贴图、多语言、Pages 部署可用
- 阶段 2:
server测试通过;mock 支付 → 后台导出链路已接通(本机)