Repolode
plantuml-stdlib

plantuml-stdlib/C4-PlantUML

基于 PlantUML 的 C4 模型宏库,用纯文本代码绘制软件架构图。

可替代:LucidchartVisio

Star
7,441
Fork
1,168
未关闭 Issue
0
最近提交
9天前

这是什么?

C4-PlantUML 是一组实现 C4 软件架构模型的 PlantUML 宏和构造型(stereotype)。无需手动拖拽图形,只需在简短的文本文件中描述人员、系统、容器、组件和部署节点,PlantUML 即可渲染出架构图,便于与代码一起做版本管理和评审。

该库按图类型提供不同的引入文件,覆盖系统上下文图、容器图、组件图、动态图、部署图以及 C4 风格的时序图。每类图都包含常用元素宏、外部元素、数据库与消息队列、边界以及可指定方向的关系宏,同时支持图标(sprite)、元素链接、自定义标签并自动生成图例,还提供布局选项。

项目跨平台且开源,附带 VS Code 代码片段和 IntelliJ 实时模板。图可以通过本地 PlantUML jar 或 PlantUML 在线服务渲染,库文件既可以从仓库地址引入,也可以使用 PlantUML 标准库中自带的版本。

核心功能

  • 01为系统、容器、组件、动态、部署及 C4 风格时序图提供专用宏。
  • 02支持人员、系统、容器、数据库、消息队列及外部元素等类型。
  • 03提供可指定方向的关系宏和边界分组。
  • 04支持图标、元素链接,以及带自动生成图例的自定义标签。
  • 05提供 VS Code 代码片段和 IntelliJ 实时模板。

适用场景

  • 在前期架构设计讨论中记录软件架构。
  • 将架构图与其描述的代码一同存放在同一仓库中维护。
  • 向非技术干系人说明系统上下文和容器结构。

快速上手

  1. 1

    在 .puml 文件中引入 C4_Container 库

    !include <C4/C4_Container>
  2. 2

    在 @startuml/@enduml 之间用纯文本编写 C4 元素和关系

  3. 3

    使用 PlantUML 渲染图表,例如通过 jar 文件

    java -jar plantuml.jar -DRELATIVE_INCLUDE="." ...

使用前须知

  • 渲染图表需要 PlantUML 环境,因此需要 Java 或 PlantUML 服务器才能查看。

标签

常见问题

C4-PlantUML 是什么?
基于 PlantUML 的 C4 模型宏库,用纯文本代码绘制软件架构图。 C4-PlantUML 是一组实现 C4 软件架构模型的 PlantUML 宏和构造型(stereotype)。无需手动拖拽图形,只需在简短的文本文件中描述人员、系统、容器、组件和部署节点,PlantUML 即可渲染出架构图,便于与代码一起做版本管理和评审。
C4-PlantUML 可以免费使用吗?用的什么许可证?
C4-PlantUML 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
C4-PlantUML 还在维护吗?
活跃维护中。C4-PlantUML 最近一次提交是在 2026年10月13日。
C4-PlantUML 适合用来做什么?
在前期架构设计讨论中记录软件架构。 将架构图与其描述的代码一同存放在同一仓库中维护。 向非技术干系人说明系统上下文和容器结构。
C4-PlantUML 怎么安装和运行?
在 .puml 文件中引入 C4_Container 库: !include <C4/C4_Container> 在 @startuml/@enduml 之间用纯文本编写 C4 元素和关系 使用 PlantUML 渲染图表,例如通过 jar 文件: java -jar plantuml.jar -DRELATIVE_INCLUDE="." ...
在哪里获取 C4-PlantUML?
源代码和安装说明在 GitHub 上:https://github.com/plantuml-stdlib/C4-PlantUML

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目