Initial TrueGrowth source import
This commit is contained in:
125
README.md
Normal file
125
README.md
Normal file
@@ -0,0 +1,125 @@
|
||||
<div align="center">
|
||||
<h1>TrueGrowth (TrueGrowth.ai)</h1>
|
||||
<h3>桌面 AI 创作工作台 · 应用中心、素材、任务、模型与无限画布</h3>
|
||||
<p>连接 OpenTu 创作前端与 AIGCPanel 本地 Runtime,让图片、视频、数字人、语音、素材和任务在同一工作区持续执行。</p>
|
||||
</div>
|
||||
|
||||
[English README](./README_en.md)
|
||||
|
||||
## 产品展示
|
||||
|
||||
| 拆分图片 | 流程图 | 思维导图 |
|
||||
| --- | --- | --- |
|
||||
|  |  |  |
|
||||
| 语义理解 - 拆分图片 | 语义理解 - 流程图 | 语义理解 - 思维导图 |
|
||||
|
||||
## 平台能力
|
||||
|
||||
- **AI 生成与模型路由**:统一调度图片、视频、音频、数字人、文本与 Agent 流程。
|
||||
- **桌面工作台**:左侧应用导航、顶部项目与任务状态、应用中心和专业工具页。
|
||||
- **画布工作区**:保留 OpenTu Drawnix 无限画布,承载 AI 任务、素材、Frame、工具窗口与知识库内容。
|
||||
- **任务与素材管理**:通过任务队列、素材库、统一缓存和历史记录复用生成结果。
|
||||
- **数字人与声音 Runtime**:以 AIGCPanel 的 `soundTts`、`soundClone`、`videoGen`、`asr` 契约承接数字人口播、音色克隆、长文本 TTS、字幕和视频换声。
|
||||
- **AI 智能剪辑**:vendor 进 FunClip,预留 ASR、文本选段、LLM 高光剪辑、SRT 输出和素材回写。
|
||||
- **本地 Runtime 桥接**:提供 TrueGrowth Local API Gateway,统一暴露 AIGCPanel、FunClip、工作流和模型状态。
|
||||
- **工具箱与扩展**:支持内部 React 工具、iframe 工具、Skill/Agent 和插件化运行时。
|
||||
- **PPT 与内容工作流**:支持 Frame 幻灯片、PPT 导出、Markdown/Mermaid 转换和多媒体编辑。
|
||||
|
||||
## 本地开发
|
||||
|
||||
### 环境要求
|
||||
|
||||
- Node.js 20+
|
||||
- pnpm 10.21.0(推荐通过 Corepack 启用)
|
||||
|
||||
### 安装与启动
|
||||
|
||||
```bash
|
||||
corepack enable pnpm
|
||||
pnpm install
|
||||
pnpm start
|
||||
```
|
||||
|
||||
启动后访问 `http://localhost:7200`。
|
||||
|
||||
### 常用命令
|
||||
|
||||
```bash
|
||||
pnpm start # 启动 Web 开发服务
|
||||
pnpm web:dev # 在 127.0.0.1:7200 启动 Web Renderer
|
||||
pnpm runtime:dev # 启动 TrueGrowth 本地 API Gateway 占位服务
|
||||
pnpm funclip:dev # 启动 FunClip 本地 Gradio Runtime(需先安装 Python 依赖)
|
||||
pnpm electron:dev # 启动 Electron 桌面壳,加载 127.0.0.1:7200
|
||||
pnpm desktop:dev # 启动桌面调试(Web + Electron,本地 API 由桌面壳内置)
|
||||
pnpm desktop:dev:full # 启动完整调试(额外预启动 FunClip,资源占用更高)
|
||||
pnpm desktop:build:mac # 构建 macOS 桌面端安装包
|
||||
pnpm desktop:build:win # 构建 Windows 桌面端安装包(建议在 Windows/CI 上执行)
|
||||
pnpm build:web # 构建 Web 应用
|
||||
pnpm build # 构建工作区
|
||||
pnpm check # typecheck + lint
|
||||
pnpm test # 运行单元测试
|
||||
pnpm e2e:smoke # 运行冒烟测试
|
||||
pnpm check:cycles # 检查循环依赖
|
||||
pnpm manual:build # 生成用户手册
|
||||
```
|
||||
|
||||
### Local API Gateway
|
||||
|
||||
`pnpm runtime:dev` 默认监听 `http://127.0.0.1:48177`,用于工作台探测本地能力、提交本地任务,并桥接 AIGCPanel / FunClip Runtime:
|
||||
|
||||
- `/local-api/health`
|
||||
- `/local-api/assets`
|
||||
- `/local-api/tasks`
|
||||
- `POST /local-api/tasks`
|
||||
- `GET /local-api/tasks/:id`
|
||||
- `/local-api/providers`
|
||||
- `/local-api/runtime`
|
||||
- `/local-api/aigcpanel`
|
||||
- `POST /local-api/aigcpanel/tasks`
|
||||
- `/local-api/funclip`
|
||||
- `POST /local-api/funclip/tasks`
|
||||
- `POST /local-api/runtime/funclip/start`
|
||||
- `POST /local-api/runtime/funclip/stop`
|
||||
- `/local-api/workflows`
|
||||
- `POST /local-api/workflows/run`
|
||||
|
||||
AIGCPanel 桥接会优先读取 `AIGCPANEL_HTTP_PORT` + `AIGCPANEL_HTTP_TOKEN`,否则读取 AIGCPanel Electron 写入的 `cli-auth.json`。当请求携带真实 `model/version/function` 或 `workflowName/workflowData` 时,Local API 会代理到 AIGCPanel 的 `/api/model/*` 或 `/api/workflow/*`;未连接时保持工作台 mock 任务闭环可用。
|
||||
|
||||
FunClip 可通过 `pnpm funclip:dev` 独立启动,也可由 `POST /local-api/runtime/funclip/start` 懒启动。默认 `pnpm desktop:dev` 不预启动 FunClip,避免桌面调试和本地生图同时占用过多 CPU、内存或 GPU;只有需要同时调试智能剪辑运行时时再使用 `pnpm desktop:dev:full`。可用 `TRUEGROWTH_FUNCLIP_PORT`、`TRUEGROWTH_FUNCLIP_LANG`、`TRUEGROWTH_FUNCLIP_URL` 覆盖默认配置。
|
||||
|
||||
## 部署
|
||||
|
||||
项目保留多条部署链路:
|
||||
|
||||
- Vercel / Netlify:使用自己的仓库配置。
|
||||
- Docker:使用仓库根目录的 `Dockerfile` 构建静态站点镜像。
|
||||
- Hybrid CDN + 自托管:见 [NPM CDN 部署](./docs/NPM_CDN_DEPLOY.md) 与 [CDN 部署](./docs/CDN_DEPLOYMENT.md)。
|
||||
- 桌面端商业打包:见 [桌面端打包流程](./docs/DESKTOP_PACKAGING.md)。
|
||||
|
||||
## 仓库结构
|
||||
|
||||
```text
|
||||
TrueGrowth/
|
||||
├── apps/
|
||||
│ ├── web/ # TrueGrowth Web 应用与 Service Worker
|
||||
│ └── web-e2e/ # Playwright E2E 与手册生成脚本
|
||||
├── packages/
|
||||
│ ├── drawnix/ # 画布工作区核心库
|
||||
│ ├── react-board/ # Plait React 画布适配层
|
||||
│ ├── react-text/ # 文本渲染组件
|
||||
│ └── utils/ # 共享工具与工作流解析
|
||||
├── docs/ # 当前开发文档入口
|
||||
├── openspec/ # 需求规格与变更提案
|
||||
└── scripts/ # 构建、发布、手册与部署脚本
|
||||
```
|
||||
|
||||
## 文档入口
|
||||
|
||||
- [开发文档索引](./docs/README.md)
|
||||
- [二开指南](./docs/SECONDARY_DEVELOPMENT_GUIDE.md)
|
||||
- [贡献指南](./CONTRIBUTING.md)
|
||||
- [OpenSpec 说明](./openspec/AGENTS.md)
|
||||
|
||||
## License
|
||||
|
||||
MIT
|
||||
Reference in New Issue
Block a user