面向图表绘制、室内设计与 PPT 的 AI 多画布创作平台。
创作画布 | PPT 展示 | 视频教程 | Skills | 快速开始 | English
⭐ 如果 CanvasAnvil 对你有帮助,欢迎给仓库点个 Star,也可以 Fork 一份继续扩展你自己的画布工作流。
CanvasAnvil 将图表、室内设计工作流和 PPT 制作整合到一个统一工作区中。
将结构化提示快速转成清晰图表,适合学术框架、系统架构、实施路线和课程导图,并在同一画布中持续迭代布局、节点关系与说明文案。
![]() 学术研究框架图 |
![]() 智能问答系统架构图 |
![]() 项目实施路线图 |
![]() 课程设计思维导图 |
把规划板、2D 布局、材质方案、渲染编排和材料清单输出串成一条完整的室内设计交付链路。
![]() 装修平面布置图 |
![]() 地面铺装图 |
![]() 顶棚平面图 |
![]() 墙体定位图 |
![]() 机电综合图 |
![]() 立面索引图 + 室内立面图 |
![]() 节点详图 |
通过“先大纲、后视觉”的方式生成完整演示文稿,并导出可编辑 PPT、PDF 或图片版 PPT。
AI 时代的高效内容创作
|
智能协作驱动未来增长
|
AI 驱动业务创新
|
绿色低碳转型与智慧园区建设
|
| 画布 | 核心能力 | 常见输出 |
|---|---|---|
图表绘制 |
结构化图表生成与局部编辑 | 流程图、架构图、逻辑图 |
室内设计 |
室内方案规划、图纸协同与交付打包 | 概念板、二维图纸、渲染任务单、材料清单 |
PPT 演示 |
结构化演示文稿生成与多种导出 | 演示文稿、汇报幻灯片、可编辑演示稿、提案稿 |
当前版本:v2.1.0
本分支未发布内容 —— 整个项目的结构性重构,以及重构过程中发现并修复的问题。完整列表见 CHANGELOG.md。
做减法
- 只保留三个画布:图表绘制、室内设计、PPT 演示。海报、产品、信息图画布已移除。
- 移除内嵌的
pptist-lab编辑器;可编辑演示稿直接导出.pptx。 - 统一为一条 OpenAI 兼容请求路径。厂商列表不仅从应用中移除,也从
cad-skill和ppt-skill两个 skill 包中移除 —— 它们各自还带着一份九厂商的图像注册表,其中八个根本没有可用的接口地址。 - 移除与 Vite 客户端重复的 Next.js 移植版本,以及旧
PptWorkspace藏着的约 900 行不可达代码。
做结构
- 仓库拆分为
client/、server/、contracts/、resources/;每个工作区都是同样的三层:纯函数模块、按功能划分的 hook、一个界面一个文件。规范写在 docs/architecture.md。 PptCanvas.tsx从 5,300 行降到约 2,250 行,并且自身不再渲染任何界面。- 共享 UI 组件、存储层、文件处理链路、聊天基础设施和多语言各自只存在一份,不再每个工作区一套。
- 开启 TypeScript 严格模式并做了分包:首屏加载从 2.89 MB 降到约 700 KB(未压缩)。
- 260 个测试(
npm test,node:test)覆盖重构必须保持不变的纯逻辑。
PPT 工作流
- 可编辑导出改为即时完成。此前会先进入文本框校对界面,再为每页跑三次模型调用;两页的演示稿要五分钟以上,现在约一秒。
- 大纲规划智能体现在能看到模板,并据此撰写每页画面描述。此前它凭空发明配色,生图时又压过模板 —— 用深色模板做出来的演示稿是白底的。
- 挂在某一页上的素材图、以及在交互区上传的图片,现在能真正送达生图模型。此前它们都在调用接口前被丢弃。
- 交互区工具栏新增两个开关,可指定本次消息是「改图」还是「重画」;两个都不选则仍由模型自行判断。
- 放映功能重新有了入口 —— 它一直是完整的,只是没有任何地方能进去。
修复
沿途发现并修复 21 处缺陷,包括每个聊天面板都存在的无限渲染循环、CAD 中四处吞掉补丁失败的 catch 块,以及会把整段对话写进控制台的服务端调试日志。
当前在线访问地址:
- 🔗 CanvasAnvil:https://canvasanvil.codingfgd.asia
- Bilibili 教程:https://b23.tv/pFWv7iI
CanvasAnvil 为每个画布都提供了专用本地 skill,用来保证工作流稳定、输出一致,而不是把所有任务都塞进同一条通用提示链。
flow-skill· 图表生成与打包 输出整洁的图表资源,并默认跳过独立 HTML 预览。cad-skill· 室内设计交付流程 导出图纸打包结果与 CSV 材料清单,便于后续交付。ppt-skill· 完整演示稿生产 强制先确认大纲,再生成整套演示稿,并导出可编辑 PPT、PDF 或图片版 PPT。
所有 skill 默认使用宿主文本模型。只有生图能力需要单独配置图片生成供应商。
- 安装依赖
npm install- 启动本地开发
npm run dev默认访问地址:http://127.0.0.1:8001
CanvasAnvil 以单服务部署,详细配置见 deploy/README.zh-CN.md。
- 运行类型检查
npm run check- 构建生产版本
npm run buildnpm run dev:在8001端口启动应用npm run check:执行 TypeScript 检查npm run build:构建生产版本
- 所有模型调用都走 OpenAI 的 HTTP 协议。想换厂商,只要在设置里把 Base URL 指向它的 OpenAI 兼容端点即可,没有厂商列表可选。
- AI 配置读取本地应用设置;文本通道和生图通道分别配置。
- 本地开发依赖 API 服务提供
/api/chat和/api/ppt-ai。 - 修改
vite.config.ts中的本地 API 路由后,需要重启开发服务。 server/**使用相对路径导入:vite.config.ts会 import 开发中间件(这样npm run dev一条命令就带 API),而 Vite 用纯 Node 加载自己的配置文件,不认@/别名。- 设置
PROMPT_LOG_DIR可把拼装好的提示词写入磁盘;默认关闭,因为日志里含有用户内容。
- 架构说明:docs/architecture.md
- 部署说明:deploy/README.md
CanvasAnvil 采用 GNU Affero General Public License v3.0(AGPL-3.0)协议发布。 完整协议内容请查看 LICENSE。
3524962421@qq.com
欢迎加入「智构开源社」群聊,一起交流 CanvasAnvil 及开源项目相关内容。
















