feat: integrate platform backend and application interfaces

This commit is contained in:
Qiufeng
2026-09-02 21:09:47 +08:00
parent cd9ac1af70
commit b16390dd41
648 changed files with 102488 additions and 17737 deletions
+14 -31
View File
@@ -6,18 +6,11 @@
<p align="center">
<a href="https://linux.do/"><img src="https://img.shields.io/badge/Linux.do-Community-2b6de8?style=flat-square" alt="Linux.do"></a>
<a href="https://render.com/deploy?repo=https://github.com/basketikun/infinite-canvas"><img src="https://img.shields.io/badge/Render-Deploy-46e3b7?style=flat-square&logo=render&logoColor=111111" alt="Deploy to Render"></a>
<a href="https://github.com/basketikun/infinite-canvas"><img src="https://img.shields.io/github/stars/basketikun/infinite-canvas?style=flat-square&logo=github" alt="GitHub stars"></a>
<a href="https://github.com/basketikun/infinite-canvas/tags"><img src="https://img.shields.io/github/v/tag/basketikun/infinite-canvas?style=flat-square&label=version" alt="Version"></a>
<a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-f97316?style=flat-square" alt="License"></a>
<a href="https://vite.dev/"><img src="https://img.shields.io/badge/Vite-7-646cff?style=flat-square&logo=vite&logoColor=white" alt="Vite"></a>
<a href="https://reactrouter.com/"><img src="https://img.shields.io/badge/React_Router-7-ca4245?style=flat-square&logo=reactrouter&logoColor=white" alt="React Router"></a>
</p>
<p align="center">
<a href="https://trendshift.io/repositories/50077?utm_source=repository-badge&amp;utm_medium=badge&amp;utm_campaign=badge-repository-50077" target="_blank" rel="noopener noreferrer"><img src="https://trendshift.io/api/badge/repositories/50077" alt="basketikun%2Finfinite-canvas | Trendshift" width="250" height="55"/></a>
</p>
<p align="center">
<a href="docs/content/docs/overview/quick-start.mdx">快速开始</a> · <a href="docs/content/docs/overview/features.mdx">功能介绍</a> · <a href="docs/content/docs/overview/render.mdx">Render 部署</a> · <a href="docs/content/docs/overview/docker.mdx">Docker 部署</a> · <a href="docs/content/docs/canvas/canvas-node-manual.mdx">画布节点操作手册</a> · <a href="docs/content/docs/canvas/canvas-shortcuts.mdx">画布快捷键</a> · <a href="SECURITY.md">漏洞提交</a> · <a href="docs/content/docs/progress/todo.mdx">待办事项</a>
</p>
@@ -62,11 +55,11 @@
- 首页与项目库:保留网站首页、多画布项目管理、导入导出和项目删除。
- 无限画布:节点拖拽缩放、连线、分组、小地图、撤销重做和多种画布背景。
- AI 创作:浏览器直连用户配置的接口,支持图片、文本和音频生成以及参考图编辑。
- AI 创作:通过同源平台网关提交图片、文本和音频异步任务,支持参考图编辑与 WebSocket 进度。
- 图片工具:反推提示词、多角度生成、裁剪、遮罩编辑、切分和本地放大。
- 资产与同步:本地资产库支持文本和图片;WebDAV 可同步画布、资产及图片/音频文件。
- 模型配置:支持多渠道、默认模型、配置导入导出,以及图片、文本和音频自定义调用脚本。
- 内部插件能力:保留画布节点注册、运行时和 TypeScript SDK,供项目内部构建扩展节点。
- 资产与同步:本地资产库支持文本、图片和音频;WebDAV 可同步画布、资产及媒体文件。
- 平台目录:用户只选择公开模型产品、能力、分辨率和金币价格,供应商渠道由管理台配置。
- 管理后台:提供用户、认证消息、渠道、模型、套餐、账本、任务、存储和审计管理。
完整功能说明见 [功能介绍](docs/content/docs/overview/features.mdx)。
@@ -74,13 +67,13 @@
## 快速开始
AI API Key、Base URL、画布和资产默认保存在浏览器本地,也可以使用 WebDAV 保存画布资产文件。
画布和资产默认保存在浏览器 IndexedDB/localForage;认证由同源服务端处理,provider 凭证只保存在服务端密文中。WebDAV 可保存画布、资产和媒体文件。
### 本地开发
```bash
git clone git@github.com:basketikun/infinite-canvas.git
cd infinite-canvas
git clone https://git.awaioi.com/awaioi/MiragenFlow.git
cd MiragenFlow
npm --prefix admin install --ignore-scripts
cd web
bun install
@@ -92,16 +85,16 @@ bun run dev:all
### Docker 运行
```bash
git clone git@github.com:basketikun/infinite-canvas.git
cd infinite-canvas
docker compose up -d
git clone https://git.awaioi.com/awaioi/MiragenFlow.git
cd MiragenFlow
cp .env.example .env
# Fill every production secret in .env before starting the stack.
docker compose up -d --build
```
运行后默认只使用 3000 端口,可访问 `http://localhost:3000`;后台管理台位于 `http://localhost:3000/admin/`。
该 Compose 文件会同时构建前台/后台静态资源、API 服务,并启动 PostgreSQL 与 Redis;首次启动需要完成镜像构建和数据库迁移。运行后默认只使用 3000 端口,可访问 `http://localhost:3000`;后台管理台位于 `http://localhost:3000/admin/`。
首次打开后进入右上角配置,填入自己的 OpenAI 兼容 `Base URL` 和 `API Key`。
如果默认的 OpenAI 接口调用方式与您的 API 不同,可自定义图片、文本或音频脚本调用。
首次打开后注册或登录元境幻生账户。模型、渠道、余额和任务由平台服务端统一管理;用户端不保存供应商 `Base URL`、`API Key` 或自定义调用脚本。WebDAV 可在「存储设置」中配置,用于保存个人生成数据。
## 效果展示
@@ -145,13 +138,3 @@ docker compose up -d
## 开源协议
本项目使用 [MIT License](LICENSE)。任何人都可以免费使用、复制、修改、分发、再授权和商业使用本项目,也可以用于闭源产品。
## Star History
<a href="https://www.star-history.com/?repos=basketikun%2Finfinite-canvas&type=date&legend=top-left">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/chart?repos=basketikun/infinite-canvas&type=date&theme=dark&legend=top-left" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/chart?repos=basketikun/infinite-canvas&type=date&legend=top-left" />
<img alt="Star History Chart" src="https://api.star-history.com/chart?repos=basketikun/infinite-canvas&type=date&legend=top-left" />
</picture>
</a>