Skip to content

本地开发 ​

环境要求 ​

  • Node.js 26.4.0 或更高版本
  • pnpm 11.7.0 或更高版本

安装与初始化 ​

安装依赖并初始化数据库:

bash
pnpm install
pnpm run db:reset

db:reset 会在 packages/database/prisma/dev.db 创建并填充一个本地 SQLite 数据库,该文件已在 .gitignore 中忽略。

启动服务 ​

一次性启动所有服务 ​

bash
pnpm run dev:services
服务地址
Admin BFFhttp://127.0.0.1:4010
Entitlement Servicehttp://127.0.0.1:4317
Identity Servicehttp://127.0.0.1:4320

单独启动某个服务 ​

bash
pnpm run dev:admin-bff          # 仅启动 Admin BFF(端口 4010)
pnpm run dev:entitlement-service # 仅启动 Entitlement Service(端口 4317)
pnpm run dev:identity-service    # 仅启动 Identity Service(端口 4320)

服务启动后可访问:

地址说明
http://127.0.0.1:4010/healthzAdmin BFF 健康检查
http://127.0.0.1:4010/graphiqlAdmin BFF GraphiQL 调试页
http://127.0.0.1:4317/docsEntitlement Service Swagger UI
http://127.0.0.1:4317/graphiqlEntitlement Service GraphiQL 调试页
http://127.0.0.1:4320/docsIdentity Service Swagger UI

Admin BFF 的 GraphQL 端点(/graphql)仅接受 POST 请求。浏览器中调试请使用 GraphiQL。

如需关闭 Swagger UI 和 GraphiQL(例如模拟生产环境测试),可设置 ENABLE_INTERNAL_DOCS=false 或 NODE_ENV=production。

构建文档 ​

本地构建并预览 VitePress 文档站点:

bash
pnpm run docs:build
pnpm run docs:preview

docs:build 会重新生成 OpenAPI 规范、GraphQL SDL、Redoc 页面和 VitePress 静态站点。

验证 ​

提交代码前运行完整验证:

bash
pnpm run lint
pnpm run typecheck
pnpm run test:all
pnpm run build:all

或一键运行所有检查:

bash
pnpm run verify