| sidebar_position |
6 |
| title |
Monorepo 本地开发 |
| description |
贡献 ReactPress 源码 — clone 仓库、pnpm dev、包结构、build:plugins 与 dev:desktop 开发流程。 |
| keywords |
reactpress |
monorepo |
contributing |
pnpm dev |
local development |
|
本文面向向 ReactPress 仓库贡献代码或需要调试 core / 主题 / 插件的开发者。
git clone --depth=1 https://github.com/fecommunity/reactpress.git
cd reactpress
npm i -g pnpm
pnpm install
| 要求 |
说明 |
| Node.js |
≥ 20 |
| pnpm |
9.x(见 packageManager 字段) |
| Docker |
可选;默认 SQLite 可不装 |
| OS |
macOS / Linux / Windows |
├─ cli/ # @fecommunity/reactpress 发布物
├─ server/ # NestJS API
├─ web/ # Vite Admin SPA
├─ desktop/ # Electron 桌面壳
├─ toolkit/ # OpenAPI SDK + React 集成
├─ themes/ # 官方主题 registry
├─ plugins/ # 官方插件 registry
├─ docs/ # 本官方文档站(Docusaurus)
└─ package.json
pnpm run init # 生成 .reactpress/ + .env(可选,dev 也会处理)
pnpm run build:plugins # 开发插件前必须编译官方插件
pnpm dev # API :3002 + Admin :3000 + Theme :3001
等价于终端用户 reactpress init 后的全栈,但使用 workspace 源码而非 npm bundled 包。
| 命令 |
用途 |
pnpm dev:api |
仅调试 Server |
pnpm dev:web |
Admin + API |
pnpm dev:client |
仅主题 |
pnpm dev:desktop |
Electron + SQLite |
pnpm dev:docs |
文档站 http://localhost:3000(docs 包独立端口,见终端输出) |
pnpm run build # 全量生产构建
pnpm run build:toolkit # 修改 OpenAPI 客户端后
pnpm run build:web # 仅 Admin
pnpm run build:server # 仅 API
pnpm test # CLI 单元测试
pnpm run test:smoke # API health 冒烟
pnpm run typecheck # TS 检查
pnpm run build:cli
node ./cli/bin/reactpress.js doctor
pnpm dev:docs
# 或
cd docs && pnpm dev
文档源文件:docs/tutorial/(中文),英文翻译:docs/i18n/en/docusaurus-plugin-content-docs/current/。
- 代码与 commit message:English
- 用户文档:英文 README + 中文
README-zh_CN.md;本站中文为主、英文 i18n 同步
- 见仓库 CONTRIBUTING.md
|
全局 @fecommunity/reactpress |
Monorepo pnpm dev |
| API 来源 |
bundled in CLI |
workspace server/ |
| 命令 |
init / doctor / logs / stop |
完整 dev / build / pm2 |
| 适用 |
建站用户 |
core / 主题 / 插件贡献 |