📌 项目地址likec4/likec4 | ⭐ 4,182
颗星 | 🔧 TypeScript | 📜 未标注

LikeC4 是什么?

LikeC4 是一套建模语言和配套的图表生成工具。你在 .c4
文件里用 DSL 描述软件架构,然后运行
npx likec4 start,浏览器里就能看到实时更新的交互式图表。模型改了,图表跟着改,不用再手动更新
Visio 或 Draw.io。

和 C4 模型(Context/Container/Component/Code)一脉相承,但 LikeC4
不强制你遵守那四层。它允许你自定义符号、元素类型,以及任意数量的嵌套层级。比如你可以定义自己的“消息队列”或“外部
API”元素,把系统拆成五层、六层,只要你的团队看得懂就行。

项目用 TypeScript 写的,当前 GitHub 上有 4182 个 Star,MIT
许可证。

和 Structurizr 的区别在哪?

Structurizr 是 C4 模型最经典的实现,但它的 DSL
和工具链绑定较死。LikeC4 给了更多自由度:

特性 LikeC4 Structurizr DSL
层级数量 任意嵌套,不限 固定四层(Context/Container/Component/Code)
元素符号和样式 完全自定义 基本可配置,但受 C4 语义限制
图表生成方式 本地 CLI 启动预览,实时更新 需通过 Structurizr 桌面端或在线服务
许可证 MIT 核心库开源,企业功能需付费

如果你的团队觉得 C4
的严格分层太束缚,或者你想给微服务项目的消息队列、API
网关画专用元素,LikeC4 比 Structurizr
更合适。反过来,如果你希望用一套强制标准减少争议,Structurizr
可能更省心。

怎么开始用?

安装 Node.js 后,在项目目录里建一个 .c4 文件(比如
model.c4),然后跑:

npx likec4 start

这条命令会启动本地开发服务器,解析 DSL
生成图表并在浏览器里展示。你编辑文件,页面会自动刷新。

官方提供了模板仓库 likec4/template 和在线
Playground playground.likec4.dev,不需要装东西就能试语法和看效果。此外还有一份
Tutorial,半小时能读完,适合零基础。

更完整的用法(比如导出静态 HTML、集成 CI/CD)要看官方文档

社区和贡献

项目在 Discord 和 GitHub Discussions 上维护。遇到问题首选去 Discord 问,通常回复快。GitHub
Discussions 适合提建议或讨论。

如果你想参与开发,看 CONTRIBUTING.md。项目依赖社区赞助,可以通过
OpenCollectiveGitHub Sponsors 支持。

几点注意

  • 项目还处于活跃开发阶段,CLI
    参数和文档可能会变,以官方文档为准。
  • DSL 语法不难,但需要花点时间熟悉。官方教程大约 30
    分钟能过一遍,之后就能直接用。
  • MIT 许可证,商用、修改都没问题。
这篇文章对你有帮助吗?

发表回复