📐 UML Generator

About

UML Generator 是一个基于 Next.js + TypeScript 的轻量后端应用,将自然语言需求转换为 uml-diagrams.org 参考风格的 PlantUML 图。

  • LLM 调用:基于 OpenAI SDK 的 chat/completions 协议,凭据保存在浏览器本地并做简单加密。
  • PlantUML 生成流程遵循 plantuml-skill 规范:识别图类型 → 生成带强制 monochrome 前导块的 PlantUML 源 → 交由 Kroki 渲染。
  • SVG 渲染:kroki.io,同时提供明亮与深色两种主题。
  • 支持导出单个 puml / svg,或打包下载(包含 puml、明亮/深色 SVG 及 JSON 日志)。

与 plantuml-skill 的关系

本项目是 plantuml-skill(同名 Skill 也发布在 ClawHub)的 Web 化承载与在线服务实现

  • plantuml-skill:定义「自然语言 → PlantUML」流水线的 system prompt、图类型识别、 uml-diagrams.org monochrome 前导块、结构化 JSON 输出协议、以及 Kroki 校验 / 自愈循环等约定。
  • uml-generator-web(本项目):把该 Skill 规范工程化落地为一个可部署的 Next.js 应用与稳定版 REST API (/api/v1/plantuml/*),任何遵循 plantuml-skill 规范的 Agent / IDE 插件都可直接调用。

最新更新

  • 深色模式与响应式顶栏:新增 light / dark 主题切换(自动读取系统偏好),顶栏在窄屏下自动折叠。
  • 模型设置页优化:改进凭据输入、导入 / 导出体验及明暗主题下的视觉一致性。
  • 页面展示改进:统一卡片、按钮、代码块在两种主题下的对比度与间距。
  • 导航栏按钮重设计:重排顶栏操作区,「新建项目」通过 URL 参数触发生成器页面 state reset。

License

本项目采用 MIT License 开源,详见仓库根目录的 LICENSE 文件。

⚠ 使用远程 Kroki 会将 PlantUML 源码 POST 到 kroki.io。请勿在包含机密业务逻辑的场景下使用。