Files
productcanvas/README.md
2025-11-06 14:18:44 +08:00

212 lines
7.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 产品分析工具
一个基于AI对话的产品战略分析工具帮助用户快速生成产品画布、SWOT、分析图表等支持产品规划和决策。
![纯前端JS](https://img.shields.io/badge/纯前端-JS-informational)
![AI驱动](https://img.shields.io/badge/AI驱动--important)
## 🌟 功能特点
### 🔄 多模式切换系统
- **产品画布模式**:生成和展示产品画布图表
- **SWOT分析模式**生成和展示SWOT分析图表
- **ECharts图表模式**:生成数据可视化图表
- **Mermaid图表模式**:生成流程图和关系图
- **落地页生成模式**:基于提示词流式生成完整 HTML 落地页并实时预览
![](/设计/images/mermaid.jpeg)
![](/设计/images/echart.jpeg)
![](/设计/images/huabu.jpeg)
![](/设计/images/swot.jpeg)
![](/设计/images/peizhi.jpeg)
![](/设计/images/onepage.png)
### 💬 AI对话交互系统
- **智能对话**:基于自然语言的产品分析请求
- **消息发送**用户输入文本请求支持Enter键快捷发送
- **对话历史**保存并展示用户与AI的完整对话记录
- **消息操作**:支持退回、重新生成、删除消息
### 📊 图表生成与展示系统
- **SVG图表生成**根据用户请求生成相应的SVG图表
- **图表占位符**:对话中显示可点击的图表预览块
- **图表渲染**点击占位符在右侧面板完整展示SVG图表
- **图表存储**本地存储生成的SVG内容支持历史查看
- **缩放控制**:支持图表的放大、缩小和重置
### 🛠️ 图表导出功能
- **SVG下载**将当前图表导出为SVG文件
- **图片导出**将当前图表导出为PNG图片格式
- **剪贴板复制**:复制图表图片到剪贴板
- **代码查看**查看当前图表的SVG源代码
- **页面预览**:对落地页生成结果进行 98% 视窗尺寸的模态预览或一键新窗口打开
## **所有数据均由浏览器本地缓存,清空后就清空了💨**
## 🚀 快速开始
### 环境要求
- 现代浏览器支持ES6+
#### 方法1本地运行
下载下来用GoLive启动下或者直接打开`index.html`
#### 方法2使用Docker
```bash
# 构建并运行容器
docker-compose up -d
# 在浏览器中访问
open http://localhost:3000
```
docker-compose.yml
``` docker-compose.yml
version: '3.8'
services:
product-canvas:
image: 935732994/pmtools
ports:
- "3000:3000"
restart: unless-stopped
```
### 配置API
1. 点击右上角的"API配置"按钮
2. 填写以下信息:
- **API URL**您的AI服务API地址
- **API Key**您的API密钥
- **模型**选择使用的AI模型如gpt-4
3. 点击"保存配置"完成设置
4. 点击"测试连接"验证配置,先保存再测试
> 有些API会出现 失败情况 `连接测试失败: NetworkError when attempting to fetch resource.` 这时需要找不失败的💨
## 📁 项目结构
```
产品画布/
├── index.html # 主页面
├── css/
│ └── style.css # 自定义样式
├── js/
│ ├── app.js # 应用入口
│ ├── apiclient.js # API客户端
│ ├── utils.js # 工具函数
│ ├── core/ # 核心模块
│ │ ├── app-shell.js # 应用外壳
│ │ ├── module-registry.js # 模块注册表
│ │ └── module-runtime.js # 模块运行时
│ ├── modules/ # 功能模块
│ │ ├── product-canvas.js # 产品画布模块
│ │ ├── swot.js # SWOT分析模块
│ │ ├── echarts.js # ECharts图表模块
│ │ ├── mermaid.js # Mermaid图表模块
│ │ └── onepage.js # 落地页生成模块
│ ├── services/ # 服务层
│ │ ├── conversation-service.js # 对话服务
│ │ └── storage-service.js # 存储服务
│ └── renderers/ # 渲染器
├── libs/ # 第三方库
│ ├── css/ # 样式库
│ ├── fonts/ # 字体文件
│ └── js/ # JavaScript库
├── prompts/ # AI提示词
│ ├── canvas-prompt.txt # 产品画布提示词
│ ├── swot-prompt.txt # SWOT分析提示词
│ ├── echarts-prompt.txt # ECharts提示词
│ ├── mermaid-prompt.txt # Mermaid提示词
│ └── onepage-prompt.txt # 落地页提示词
├── 设计/ # 设计文件
│ └── 原型.html # 设计原型
├── 功能概述.md # 功能说明文档
├── docker-compose.yml # Docker编排文件
├── Dockerfile # Docker镜像构建文件
└── README.md # 项目说明文档
```
## 🎯 使用指南
### 基本使用流程
1. **选择模式**:点击顶部的模式按钮选择所需的分析类型
2. **输入需求**:在左侧对话框中描述您的产品或分析需求
3. **生成图表**AI将根据您的需求生成相应的分析图表
4. **查看图表 / 页面**:点击对话中的占位符在右侧查看完整内容
5. **导出结果**:使用底部工具栏导出、复制或全屏预览
### 产品画布模式
产品画布模式帮助您快速构建产品战略框架:
```
示例输入:
"请为我的社区废品回收智能终端系统生成一个产品画布"
```
生成的画布包含:
- 问题分析
- 客户群体
- 独特卖点
- 解决方案
- 渠道策略
- 收入分析
- 成本分析
- 关键指标
- 门槛优势
### SWOT分析模式
SWOT分析模式帮助您评估项目的优势、劣势、机会和威胁
```
示例输入:
"请对我的在线教育平台进行SWOT分析"
```
生成的分析包含:
- **优势(Strengths)**:内部有利因素
- **劣势(Weaknesses)**:内部不利因素
- **机会(Opportunities)**:外部有利因素
- **威胁(Threats)**:外部不利因素
### 高级功能
#### 消息操作
- **退回**:回退到指定消息,删除该消息之后的所有对话
- **重新生成**针对最后一条AI消息重新请求生成内容
- **删除**:删除特定消息及其关联的图表
#### 图表操作
- **缩放控制**:使用工具栏按钮调整图表大小
- **全屏查看**:在右侧面板获得更好的查看体验
- **多格式导出**支持SVG、PNG等多种导出格式
- **落地页预览**:使用“预览落地页”按钮打开 98% 视窗大小的模态窗口,可再一键在新标签页打开完整 HTML
## 🔧 开发指南
### 技术栈
- **前端框架**原生JavaScript (ES6+)
- **样式框架**Tailwind CSS
- **图标库**Iconify
- **图表库**ECharts, Mermaid
- **Markdown解析**Marked.js
- **字体**Inter Font
## 📝 更新日志
### 2025年11月6日
- 🚀 增加了落地页模块
### v1.0.0 (2025年10月27日)
- ✨ 初始版本发布
---
⭐ 如果这个项目对您有帮助,请给我们一个星标!