跳至正文

开源矩阵与边界

结论

flare-core 只管连接与帧;flare-im-core 管 IM 领域服务;flare-im-core-sdk 管客户端 IM 语义。三者可单独使用,也可组合为完整 IM 栈。

依赖关系

flowchart TB
  subgraph client["你的应用"]
    App[业务 UI / 逻辑]
  end

  SDK[flare-im-core-sdk]
  TC[flare-core Client]
  Proto[flare-proto]

  subgraph server["可选:自建 IM 后端"]
    GW[signaling-gateway]
    Orch[orchestrator]
    Conv[conversation]
    Store[storage]
  end

  FC[flare-core Server]

  App --> SDK
  SDK --> TC
  SDK --> Proto
  TC --> GW
  GW --> FC
  Orch --> Store
  Conv --> Store
从 → 到关系
flare-im-core-sdk → flare-core传输实现
flare-im-core-sdk → flare-proto消息/会话契约
flare-im-core → flare-protogRPC / 事件载荷
flare-im-core → flare-server-core发现、通用服务端基建
业务域(可选)→ flare-im-core无编译依赖;经 Hook / gRPC 集成

许可

组件许可分发注意
flare-coreApache-2.0保留版权与 NOTICE
flare-im-core / flare-im-core-sdkApache-2.0保留 NOTICE;建议在「开源许可」页注明 SDK

与业务代码的边界

  1. 不要在 flare-im-core 内引用业务 crate
  2. 业务扩展走 HookPlugin / ExtensionPlugin(见 flare-capabilityconfig/hooks.example.toml)。
  3. seq / cursor 由 Core 权威维护;客户端只上报单调游标。

下一步