Skip to content

本地开发 ​

环境要求 ​

  • Node.js 22(最低 20)
  • Corepack
  • pnpm 8.7.0
  • 可选:Docker 与 Docker Compose v2

安装依赖 ​

bash
corepack enable
pnpm install --frozen-lockfile

仓库只有一个 pnpm-lock.yaml,不要在子应用中生成独立锁文件。

准备环境变量 ​

bash
cp services/api/.env.example services/api/.env
cp services/resource/.env.example services/resource/.env
cp workers/image/.env.example workers/image/.env
cp workers/video/.env.example workers/video/.env

本地端口:

应用默认端口
API3000
Image Worker3001
Video Worker3002
Resource Service3003
DocsVitePress 自动选择,通常 5173

API 与 Image Worker 的 RESOURCE_SERVICE_URL 应指向 http://127.0.0.1:3003,API 的 WORKER_ENDPOINTS 至少应包含:

dotenv
WORKER_ENDPOINTS=image=http://127.0.0.1:3001

启动应用 ​

从仓库根目录分别运行:

bash
pnpm --filter @markify/resource-service start:dev
pnpm --filter @markify/image-worker start:dev
pnpm --filter @markify/api start:dev
pnpm --filter @markify/docs start:dev

当前图片开发不需要启动 Video Worker。

质量检查 ​

bash
pnpm format
pnpm lint
pnpm build
pnpm test
pnpm test:e2e

只构建文档:

bash
pnpm --filter @markify/docs build
pnpm --filter @markify/docs preview

VitePress 构建会检查 Markdown 解析和站内链接。新增、移动页面后必须同步修改 .vitepress/config.mts 导航。

Markify 文档与协议随实现同步演进。