Skip to content

跨项目复用

@flowporr/* 的定位:三个独立仓库共用的代码,源码家在 flowporr-packages,通过私有 Verdaccio 发布,各项目平等消费。

消费方

项目消费的包场景
one-tools-box(admin / mobile)ai-core / ai-chat-vue / x-markdown-vueAI 聊天页、Markdown 笔记预览
one-tools-box(server)ai-server服务端 AI 客户端(能力注册表 + OpenAI SDK)
flowporr(server)ai-serverAI 图片编辑(背景消除 / 增强 / 放大)

共享机制

flowporr-packages(源码家,pnpm workspace)
   └── pnpm publish ──→ npm.flowporr.com(Verdaccio)
                          └── 各项目 .npmrc: @flowporr:registry=...
                              └── pnpm add @flowporr/xxx
  • 共享库与任一消费方仓库解耦,版本 / 发布独立
  • 消费方只装需要的包(按包粒度),不引入不用的依赖

消费方注意

  • ai-chat-vue / x-markdown-vue:依赖 Element Plus(ai-chat 的 peer)与 --js-* 设计 token;需在项目里提供
  • ai-server:环境变量 DASHSCOPE_API_KEY / DEEPSEEK_API_KEY / DASHSCOPE_BASE_URL(缺省 = 默认 MaaS 端点)/ AI_IMAGE_MODEL;错误为框架无关的 AiClientError,由消费方在边界映射(如 Fastify AppError / h3 createError
  • 移动端(uni-app):ai-chat-vue / x-markdown-vue 依赖 DOM,仅 H5 可用;App 端用降级页