首页 / 开源榜单 / next-ai-draw-io

next-ai-draw-io

一个 Next.js Web 应用,允许您使用自然语言命令创建和编辑 draw.io 图表,由支持多提供商的 LLM 驱动。

TypeScriptApache-2.0Application
⭐ GitHubhttps://github.com/DayuanJiang/next-ai-draw-io
33,901
Star 数
+1,809
Star 增速
2026年7月28日
最后更新
2,450
点击数

Next AI Draw.io

概述

next-ai-draw-io 是一个开源的 Next.js Web 应用程序,它将大型语言模型 (LLMs) 的强大功能与广泛使用的绘图工具 draw.io 相结合。它使用户能够通过在聊天界面中输入自然语言指令来创建、修改和增强专业图表——无需手动拖放。

该项目旨在弥合对话式 AI 与可视化图表创建之间的差距,使开发人员、架构师和非技术用户都能轻松地在几秒钟内生成高质量的图表。


主要功能

🧠 LLM 驱动的图表创建

用户可以用纯英文(或其他语言)描述他们想要的内容,AI 会自动生成相应的 draw.io XML 图表。指令可以从简单的请求,如“绘制流程图”,到复杂的请求,如“生成一个带有负载均衡器、EC2 实例和 RDS 数据库的 AWS 架构”。

🖼️ 基于图像的图表复制

用户可以上传现有的图表图像或截图,AI 将对其进行分析并将其复制为可编辑的 draw.io 图表。这对于数字化手绘草图或重新创建文档中的图表特别有用。

📜 图表版本历史

对图表的每一次更改都会被跟踪。用户可以浏览完整的版本历史记录并恢复到任何之前的状态,为尝试 AI 生成的修改提供安全网。

💬 交互式聊天界面

实时聊天面板允许用户迭代地完善他们的图表。用户可以输入诸如“使箭头动起来”或“添加一个连接到 API 服务器的数据库节点”之类的指令,图表会相应更新。

☁️ 云架构支持

该工具对为主要云提供商生成架构图提供专门支持:

  • AWS (带有官方 AWS 图标)
  • GCP (带有 GCP 图标)
  • Azure (带有 Azure 图标)

🎨 动画连接器

支持在图表节点之间创建动画、动态连接器,以获得更具表现力和视觉吸引力的图表。


技术栈

技术 作用
Next.js 15 前端框架和 API 路由
TypeScript 类型安全的代码库
Vercel AI SDK 流式 AI 响应,多提供商抽象
react-drawio 图表渲染和操作
Tailwind CSS + shadcn/ui UI 组件和样式
Docker 容器化部署

多提供商 LLM 支持

该应用程序抽象了 LLM 提供商的配置,允许用户接入以下任何一种:

  • AWS Bedrock (默认)
  • OpenAI / 兼容 OpenAI 的 API
  • Anthropic (Claude)
  • Google AI (Gemini)
  • Azure OpenAI
  • Ollama (本地 LLM)
  • OpenRouter
  • DeepSeek

注意:claude-sonnet-4-5 特别推荐用于 AWS 架构图,因为它已在带有 AWS 徽标的 draw.io 图表上进行了训练。


项目结构

app/
  api/chat/           # 带有 AI 工具调用的聊天 API 端点
  page.tsx            # 主应用程序页面
components/
  chat-panel.tsx      # 聊天 UI 和图表控件
  chat-input.tsx      # 支持文件上传的输入框
  history-dialog.tsx  # 版本历史查看器
  ui/                 # 可重用 UI 组件
contexts/
  diagram-context.tsx # 全局图表状态管理
lib/
  ai-providers.ts     # 多提供商 AI 配置
  utils.ts            # XML 处理工具
public/               # 静态资源和演示 SVG

入门

使用 Docker 快速启动

docker run -d -p 3000:3000 \
  -e AI_PROVIDER=openai \
  -e AI_MODEL=gpt-4o \
  -e OPENAI_API_KEY=your_api_key \
  ghcr.io/dayuanjiang/next-ai-draw-io:latest

然后打开浏览器访问 http://localhost:3000

手动安装

# 克隆仓库
git clone https://github.com/DayuanJiang/next-ai-draw-io
cd next-ai-draw-io

# 安装依赖
npm install

# 配置环境
cp env.example .env.local
# 使用您的 AI 提供商设置编辑 .env.local

# 运行开发服务器
npm run dev

部署到 Vercel

点击下方按钮或遵循 Next.js 部署文档

Deploy with Vercel


用例示例

提示 输出
"给我一个关于 Transformer 架构的动画连接器图。" 带有动画连接器的 Transformer 架构图
"生成一个带有 GCP 图标的 GCP 架构图。" 完整的 GCP 云架构 SVG
"生成一个带有 AWS 图标的 AWS 架构图。" 带有官方图标的 AWS 云架构
"生成一个带有 Azure 图标的 Azure 架构图。" Azure 云架构图
"给我画一只可爱的猫。" draw.io 格式的插画猫咪图

社区与支持