Files
doodle-store/README.md
T
2026-10-12 15:22:27 +08:00

53 lines
2.4 KiB
Markdown

# Doodle Store
独立于 `doodle-mini` 的 pnpm Monorepo,用于维护统一业务后端、后续管理后台和用户 Web 网站。小程序源码与 CloudBase 兼容函数仍在 `doodle-mini`,两个项目通过 HTTPS API 协作。
## 当前范围
本次仅初始化工程,不开发具体业务:
- `apps/server`:可运行的 NestJS 服务,只有进程健康检查。
- `packages/contracts`:基础成功响应与健康检查类型,不包含业务字段或私有实现。
- `apps/admin`、`apps/web`:仅预留目录与说明,尚未选择或安装前端框架。
- 数据库、Prisma、微信登录、七牛、定时任务、业务接口与生产部署尚未接入。
## 本地使用
使用 Node.js **24.20.0** 与 pnpm **11.24.0**。如使用 fnm,可在本目录执行 `fnm use --install-if-missing`。
```bash
pnpm install --frozen-lockfile
pnpm build
pnpm dev
```
默认地址为 `http://127.0.0.1:3000/api/v1/health`。该接口只证明服务进程可以处理 HTTP 请求,不代表数据库、文件存储或业务系统已经可用。
可在 `apps/server/.env` 中配置 `PORT`、`HOST`,变量示例见 `apps/server/.env.example`。未配置时使用安全的本地默认值。不要提交真实 `.env` 或密钥。
```bash
pnpm check # 格式、代码检查、类型检查、构建与测试
pnpm build # 按工作区依赖顺序构建
pnpm start # 运行已构建的服务端
pnpm format # 格式化源码与配置
```
## 目录
```text
apps/
server/ NestJS 服务端
admin/ 后续管理后台,当前仅占位
web/ 后续用户网站,当前仅占位
packages/
contracts/ 可公开的接口类型
deploy/ 后续部署说明,当前未部署
docs/ 工程初始化与接入边界说明
```
每个实际应用与包声明自己的依赖。工作区内部使用 `workspace:*`,按应用独立构建、发布;不要求后台、网站与 API 同时上线。暂不引入 Turborepo、Nx、Redis、队列或微服务。
数据库模型、密钥和未来私有生成/绘制逻辑只能由服务端持有,不能放进公共契约包供前端导入。小程序不直接依赖本仓库源码或本地工作区包。
现有功能迁移的权威方案见 [docs/云服务端迁移方案.md](docs/云服务端迁移方案.md),小程序产品规划与历史设计仍保留在 `doodle-mini`。本仓库的初始化说明见 [docs/初始化说明.md](docs/初始化说明.md)。