HouYunFei e6dcd7a832 refactor(canvas-project): extract CanvasTopBar into its own component
Move CanvasTopBar and its private helpers (MenuLabel, CompactAgentStatus,
Shortcut) out of project.tsx into canvas-top-bar.tsx. The component already took
all data via explicit props, so the move is mechanical with no behavior change.
Drop the imports (DOCS_URL, UserStatusActions, Dropdown, several icons) that
were only used by the top bar.

project.tsx is now ~3080 lines, down from 3536 at the start of the refactor.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-17 14:04:25 +08:00
2026-07-15 15:32:32 +08:00
2026-05-19 19:50:36 +08:00

infinite-canvas logo

无限画布 (infinite-canvas)

Linux.do Deploy to Render GitHub stars Version License Vite React Router

basketikun%2Finfinite-canvas | Trendshift

快速开始 · 功能介绍 · Render 部署 · Docker 部署 · 画布节点操作手册 · 画布快捷键 · 贡献者协议 · 漏洞提交 · 待办事项 · 本地 Canvas Agent · Codex app 插件

无限画布是一款面向图片创作的开源工作台。它把画布编排、AI 图片生成、参考图编辑、对话助手、提示词库和素材沉淀放在同一个界面里,适合用来探索视觉方案并连续迭代图片结果。

Caution

项目目前处于开发阶段,不保证历史数据兼容。各种本地存储格式都可能直接调整,欢迎关注后续更新,当前更适合个人/本地部署,不建议直接公网多人共用。

如果你需要稳定维护自己的分支,建议自行 fork 后独立开发。二次开发与 PR 请保留原作者信息和前端页面标识。

核心功能

  • 无限画布:多画布项目、节点拖拽缩放、连线、小地图、撤销重做、导入导出。
  • AI 创作:浏览器前台直连你配置的 OpenAI 兼容接口,支持文生图、图生图、参考图编辑、文本问答、音频和视频生成。
  • 画布助手:围绕选中节点和上游节点对话、生图,并把结果插回画布。
  • 本地 Agent:通过本机 Canvas Agent 连接 Codex / Claude Code,让 Agent 通过 MCP 操作当前画布;
  • Codex App 插件:提供 Codex app 插件,安装后会自动注册 MCP 并尝试拉起本地 Agent。
  • 插件系统:支持通过 URL 动态安装 / 启用 / 更新 / 卸载远程节点插件,并提供 TypeScript SDK 自行开发画布节点插件。
  • 自定义接口调用:可自定义生图 / 视频接口的调用方式,灵活适配各类中转站与自建服务。
  • 提示词库:浏览器前端直连多个 GitHub 开源项目,并缓存到 IndexedDB。

完整功能说明见 功能介绍

如果你在为担心没有合适的生图API来发愁,可以查看该免费生图项目:chatgpt2api

快速开始

AI API Key、Base URL、画布、素材和生成记录默认保存在浏览器本地。

本地开发

git clone git@github.com:basketikun/infinite-canvas.git
cd infinite-canvas
cd web
bun install
bun run dev

Docker 运行

git clone git@github.com:basketikun/infinite-canvas.git
cd infinite-canvas
docker compose up -d

运行后默认端口3000,可访问 http://localhost:3000

首次打开后进入右上角配置,填入自己的 OpenAI 兼容 Base URLAPI Key

如果默认的OpenAI接口调用方式与您的API不同,可自定义生图/视频脚本调用。

效果展示

image image
image image
5 image
image image

联系方式

项目定制二次开发需求 / 生图 API 需求可联系。

邮箱:1844025705@qq.com · QQ1844025705

赞助支持

本项目长期开放广告赞助合作,欢迎品牌 / 产品投放,你的支持是持续更新的动力!

有广告赞助意向请通过上方联系方式沟通。

社区支持

学 AI,上 L 站:LinuxDO

点击链接加入群聊【AI开源交流】:https://qm.qq.com/q/DFnKzZ807u

开源协议

本项目使用 GNU Affero General Public License v3.0,见 LICENSE

Star History

Star History Chart
S
Description
No description provided
Readme AGPL-3.0 14 MiB
Languages
TypeScript 98.2%
CSS 1%
JavaScript 0.6%