Appearance
构建与部署
共享包
bash
pnpm --filter @xichen-full-stack/types build
pnpm --filter @xichen-full-stack/auth build
pnpm --filter @xichen-full-stack/api-client build
pnpm --filter @xichen-full-stack/utils build
pnpm --filter @xichen-full-stack/components build仪器设备场景额外构建:
bash
pnpm --filter @xichen-full-stack/instrument build仪器设备 Agent(Desktop 可选插件)
需要 .NET 8 SDK。仅在 Desktop 需要本地设备控制时执行。
bash
pnpm device-agent:build # dotnet publish → dist/win-x64
pnpm device-agent:dev # 开发运行,监听 :19721Desktop 带 Agent 的安装包:
bash
pnpm desktop:build:instrument
# 等价于:
pnpm device-agent:build && pnpm --filter desktop build:instrument详见 device-agent、Desktop。
前端应用
bash
pnpm --filter web build # → packages/web/dist
pnpm --filter desktop build:unpack # Electron unpacked(默认,不含 Agent)
pnpm --filter desktop build # NSIS 安装包(默认,不含 Agent)
pnpm --filter desktop build:instrument # 含 device-agent 的安装包
pnpm --filter mobile build:h5
pnpm --filter mobile build:mp-weixin
pnpm --filter mobile build:app-android # App 资源 → dist/build/appMobile Android 完整 APK
CLI build:app-android 只产出 App 资源,完整 APK 需在 HBuilderX 中 云打包 或本地打包。打包前配置 packages/mobile/.env.production 中的 VITE_API_BASE_URL。详见 Mobile — Android 打包。
全仓
bash
pnpm build # Turbo 按依赖顺序(不含 C# device-agent)
pnpm run clean # 仅删各包 dist,不删 node_modules根目录还提供:
| 脚本 | 说明 |
|---|---|
pnpm device-agent:build | C# Agent Release 发布 |
pnpm device-agent:dev | C# Agent 开发运行 |
pnpm desktop:build:instrument | device-agent + Desktop 仪器版安装包 |
依赖版本
外部依赖版本由 pnpm-workspace.yaml 的 catalog 统一维护,升级后执行 pnpm install。见 Monorepo — Catalog。
后端
| 后端 | 构建 / 运行 |
|---|---|
| server-java(单体) | mvn package → JAR;pnpm --filter @xichen-full-stack/server-java dev |
| micro-java(微服务) | mvn install -DskipTests;打包 auth / system / monitor / gateway 四个 JAR;生产需 Nacos + Gateway + MQ |
| Python | pip install -e .;uvicorn 或 Docker(见 Docker server-python) |
micro-java 不纳入 Turbo pnpm build。详见 micro-java 概览。
文档站
bash
pnpm docs:dev # 本地 http://localhost:5199
pnpm docs:build # 静态站 → packages/docs/.vitepress/dist
pnpm docs:preview # 预览构建结果也可:pnpm --filter @xichen-full-stack/docs dev
脚手架线上产物
| 端 | 说明 | 地址 |
|---|---|---|
| Web | 在线演示 | https://web.tsanyang.top/ |
| Desktop | Windows 安装包 | xichen-desktop.exe |
| Mobile | Android APK | xichen_mobile.apk |
生产部署建议
| 组件 | 建议 |
|---|---|
| Web | Nginx 托管 dist,反代 /api 到后端 |
| Desktop(默认) | desktop build;NSIS / 企业签名 |
| Desktop + 仪器设备 | 先 device-agent:build,再 desktop build:instrument |
| device-agent | 随仪器版安装包打入 resources/device-agent/ |
| Mobile Android | HBuilderX 云打包 APK;API 用公网或内网可达地址 |
| Java 单体 | JAR + systemd / Docker;部署后 DB_INIT_ALLOW_WEB=false;首次用 init 接口;缺表时启动不失败 |
| micro-java | 多服务 JAR + Nacos + Gateway + MQ 基础设施 |
| Python | Docker / uvicorn + Nginx 反代;部署后调用 数据库初始化;缺表时启动不失败 |
| MySQL | 独立实例,勿用开发 compose 密码 |