Skip to content

Commit 67c7ff1

Browse files
committed
docs: rewrite project structure and architecture sections for clarity
1 parent b1a8c2b commit 67c7ff1

1 file changed

Lines changed: 44 additions & 11 deletions

File tree

README.md

Lines changed: 44 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -82,21 +82,54 @@ Then open:
8282
- UI: [http://127.0.0.1:5174](http://127.0.0.1:5174)
8383
- Health check: [http://127.0.0.1:3101/api/health](http://127.0.0.1:3101/api/health)
8484

85-
## Repo Layout
85+
## Project Structure
8686

87-
- [`ui/`](ui/) React + Vite workbench UI
88-
- [`server/`](server/) Express server and Studio generation engine
89-
- [`tests/`](tests/) stability and workspace evaluation harnesses
90-
- [`scripts/`](scripts/) local dev orchestration
87+
这是一个 monorepo,前后端分成两个包,用 pnpm workspace 管理:
9188

92-
## Architecture
89+
```
90+
claw-design/
91+
├── ui/ # 前端:React + Vite 工作台
92+
│ ├── src/features/studio/ # 核心功能:生成、编辑、预览、导出
93+
│ ├── src/api/ # 后端 API 调用
94+
│ └── src/components/ # 通用 UI 组件
95+
96+
├── server/ # 后端:Express + Studio 生成引擎
97+
│ ├── src/lib/studio-engine/ # AI 生成核心(编排、渲染、预检、修复)
98+
│ ├── src/routes/ # REST API 路由
99+
│ ├── src/middleware/ # 日志、校验中间件
100+
│ └── skills/ # AI Skill 文件(布局修复、3D 标题等)
101+
102+
├── vendor/html-ppt-skill/ # 内置模板与主题库
103+
│ ├── assets/themes/ # 8 套配色主题
104+
│ ├── assets/animations/ # PPT 动画 CSS
105+
│ └── templates/ # 完整 deck 模板 + 单页组件
106+
107+
├── tests/ # 自动化测试
108+
│ ├── stability/ # Playwright 稳定性测试
109+
│ └── workspace-eval/ # 生成质量评估
110+
111+
├── docs/ # 文档与演示素材
112+
└── scripts/ # 本地开发脚本
113+
```
114+
115+
### 数据流(一句话)
116+
117+
用户在 **UI** 输入需求 → **Server** 组装 prompt → 调用 **本地 AI Agent** 生成 HTML → **Server** 预检/修复 → 返回 **UI** 渲染预览 → 导出 PPT/HTML
118+
119+
### 关键模块速查
93120

94-
The app is split into four main layers:
121+
| 模块 | 位置 | 作用 |
122+
|------|------|------|
123+
| 生成引擎 | `server/src/lib/studio-engine/core.ts` | 编排整个 AI 生成/修复流程 |
124+
| 预检修复 | `server/src/lib/studio-engine/preflight.ts` | 检查页面布局、标题溢出、密度问题 |
125+
| 渲染器 | `server/src/lib/studio-engine/render.ts` | 把 AI 返回的片段组装成完整 deck |
126+
| AI 执行器 | `server/src/lib/studio-engine/agent.ts` | 调用本地 AI,处理流式输出 |
127+
| 运行时首页 | `ui/src/features/studio/runtime/StudioHomePage.tsx` | 用户创建/管理项目的首页 |
128+
| 生成流程 Hook | `ui/src/features/studio/runtime/hooks/useStudioGenerationFlow.ts` | 前端生成流程的状态管理 |
129+
| 模板库 | `ui/src/features/studio/starter-packs/` | 内置模板注册与加载 |
130+
| 主题/动画 | `vendor/html-ppt-skill/assets/` | 8 套主题 + 动画系统 |
95131

96-
1. `UI`: Studio runtime, template workbench, and export surfaces
97-
2. `Server`: request validation, streaming APIs, prompt/workspace assembly, repair flow
98-
3. `Local AI agent`: invoked by the server for generation and revision
99-
4. `Local persistence`: browser IndexedDB and local storage for workspaces and projects
132+
> 想看最详细的文件级映射?可以查 [`STUDIO_FILE_MAP.md`](STUDIO_FILE_MAP.md)(团队内部交接用)。
100133
101134
## API
102135

0 commit comments

Comments
 (0)