# ONLYOFFICE 多插件开发网关 中央注册表位于 `packages/onlyoffice-plugins/registry.yaml`。开发网关为所有插件提供统一公网入口,各插件仍由独立 Vite 服务提供 HMR。 ## 启动 ```bash pnpm dev:onlyoffice ``` 默认入口: ```text http://localhost:4173/onlyoffice-plugins/0.1.0-dev/eln-template-annotator/config.json http://localhost:4173/onlyoffice-plugins/0.1.0-dev/eln-template-filler/config.json ``` 内部端口只监听本机:annotator 使用 `4181`,filler 使用 `4182`。Vite 将每个插件的 HMR path 追加到插件 base,实际 WebSocket 路径为 `/onlyoffice-plugins///__hmr/`,由同一插件代理转发。 ## 生成后端配置 ```bash mkdir -p /absolute/release-root /absolute/backend-config ONLYOFFICE_PLUGIN_PUBLIC_BASE_URL=http://localhost:4173/onlyoffice-plugins \ ONLYOFFICE_PLUGIN_API_BASE_URL=http://localhost:30000 \ ONLYOFFICE_PLUGIN_RELEASE=0.1.0-dev \ ONLYOFFICE_RELEASE_ROOT=/absolute/release-root \ ONLYOFFICE_PLUGIN_CONFIG_OUTPUT=/absolute/backend-config/onlyoffice-plugins.yaml \ pnpm generate:onlyoffice-backend-config ``` 输出文件包含注册表内全部 `definitions` 和 `scenes`,应交给配置中心或后端部署流程加载,不能写入插件公网 release 根目录。 ## 新增插件 1. 在 `packages/onlyoffice-plugins/` 下创建独立插件包。 2. 在 `registry.yaml` 添加唯一的 code、package、directory、GUID、内部端口和业务场景。 3. 保持插件版本 `0.1.0`,开发 release 使用 `0.1.0-dev`。 4. 运行网关测试和配置生成器,后端同步增加对应业务场景契约测试。 单插件开发命令继续可用,生产构建和不可变 release 不经过开发网关。