event-catalog/eventcatalog
Documentation tool built for software architecture. Document your domains, services, events and schemas — for your teams and your AI agents.
什么是 EventCatalog?
EventCatalog 是一个专为 软件架构 设计的开源 Web 基础文档平台。它让团队能够在一个可搜索的 UI 中记录和探索系统的各个组成部分——领域、服务、消息、模式和业务流程。
核心功能(如 README 所述)
| 功能 | 作用 | 重要性 |
|---|---|---|
| 架构文档 | 为领域、服务、事件、命令和消息创建页面。 | 保持系统结构的“活地图”,比分散的 Markdown 文件更容易维护。 |
| AI 驱动发现 | 内置聊天界面,可回答关于目录的自然语言问题。 | 使工程师和非技术利益相关者无需记住确切名称即可快速定位信息。 |
| 模式探索器 | 索引 OpenAPI、AsyncAPI、Protobuf、JSON Schema、Avro 等,并使其可搜索。 | 一处查找所有契约定义,减少服务集成时的摩擦。 |
| 模式字段搜索 | 在所有模式中搜索特定字段名,并查看其使用位置。 | 帮助评估变更影响并早期发现破坏性变更。 |
| 自定义文档集成 | 可将 ADR、运行手册或任何 Markdown/MDX 文档附加到任何目录实体。 | 使操作文档与所描述的架构版本同步。 |
| 业务流程可视化 | 绘制引用现有服务和消息的端到端工作流图。 | 为产品负责人和新成员提供更高层次的视图。 |
| 版本控制与治理 | 事件、命令、服务的语义版本控制,以及破坏性变更检测。 | 支持大型分布式团队中契约的安全演进。 |
| 生成器 | 支持 AsyncAPI、OpenAPI、Kafka、Confluent、AWS EventBridge 等 15+ 种自动生成功能。 | 可从现有基础设施定义快速启动目录。 |
| 可定制性与企业功能 | 主题、MDX 组件、OAuth2、RBAC、模式治理。 | 适配现有安全和品牌要求。 |
如何快速开始
# 一行式初始化 – 在新文件夹中创建可运行的目录
npx @eventcatalog/create-eventcatalog@latest my-catalog
然后打开 http://localhost:3000,通过 UI 或提供的 SDK 开始添加领域、服务和消息。
项目结构(概览)
| 包 | 作用 |
|---|---|
@eventcatalog/core |
渲染目录 UI 的主 Astro + React 应用。 |
@eventcatalog/sdk |
用于程序化创建、更新和删除目录实体的 Node.js 库。 |
@eventcatalog/create-eventcatalog |
用于生成新目录仓库的 CLI 工具。 |
@eventcatalog/visualiser |
可嵌入其他地方的独立 React 组件,用于可视化目录。 |
哪些人会使用它?
- 需要事件驱动或微服务架构单一事实来源的 工程团队。
- 希望无需深入代码仓库即可浏览业务流程和运行手册的 产品与运维人员。
- 寻找自托管、可定制解决方案,具备 RBAC 和版本控制契约的 企业。
社区与支持
- 实时演示站点展示了电商、金融、医疗和 SaaS 等真实世界的目录。
- 文档网站: https://www.eventcatalog.dev/docs
- Discord 社区,用于获取帮助和功能讨论。
- MIT + 商业许可,带有 CI 验证通过的徽章(
verify-build.yml)。
TL;DR: EventCatalog 是一个专为文档化和探索软件架构(尤其是事件驱动系统)而设计的开源工具。它结合了可搜索的模式索引、AI 辅助问答、可视化流程图和企业级功能,通过现代 Web UI 和一组 npm 包提供。
相关
- 项目
- 项目
- 项目
- 项目
- 项目