Datawhale Easy-Vibe 202602 第3次笔记

初级三:动手做出原型

目录

作业:复刻属于你自己的抖音电商工作台

软件主要技术架构

[1. 前端技术栈](#1. 前端技术栈)

[2. 核心技术原理](#2. 核心技术原理)

[A. Canvas图像生成技术](#A. Canvas图像生成技术)

[C. 本地存储技术](#C. 本地存储技术)

[3. 与传统电商工具的区别](#3. 与传统电商工具的区别)

[4. 核心创新点](#4. 核心创新点)

[5. 技术架构图](#5. 技术架构图)

[6. 总结](#6. 总结)

笔记:​编辑

[1 从想象到真实:学会向业务提问](#1 从想象到真实:学会向业务提问)

[2 从发散到收敛:锁定业务的核心痛点和功能](#2 从发散到收敛:锁定业务的核心痛点和功能)


作业:复刻属于你自己的抖音电商工作台

prompt:

1 从口述开始(推荐新手)

我想做一个工具,帮电商运营自动生成商品的主图和文案。
运营平时要一个个手动做图写文案,很麻烦。
我的想法是:他们上传商品信息,系统自动生成一批草稿,
运营挑选好用的稍微改改就能用。

先做最简单的版本:一个页面,左边填商品信息,
右边显示生成的结果。能上传图片,能填文字,
生成后显示主图预览和文案。

帮我把上面的想法扩写一下,整理成一份清晰的业务逻辑文档,
然后生成一个适合发给 AI IDE(比如 Cursor、Trae)的提示词,
用来生成单页面应用的原型代码。

2 跳过扩写环节:直接把你整理好的业务文档丢给 AI

帮我参考业务逻辑实现一个单页面应用,用来验证核心玩法功能。

业务逻辑参考如下:

  1. 帮运营批量生成第一版图文草稿:
  • **输入(支持直接上传和批量导入素材):**

  • 商品基础信息:名称、类目、品牌、材质、尺寸、颜色、适用人群等;

  • 商品图片:白底图 / 简单场景图;

  • 每次生成支持上传额外上传历史爆款截图或参考链接,允许有参考物;

  • 支持通过 Excel 批量导入,或在页面上在线录入 / 上传。

  • 支持页面上指定是否保存商品素材到素材库,方便下次使用

  • **输出(能直接拿去上架或轻改就能上架的内容):**

  • 每个商品一张"看得过去、包含基础卖点"的主图草稿;

  • 一条"结构合理、含核心关键词"的标题 + 1--2 句卖点文案。

  • **期望的使用方式变化:**

从每批商品白手起稿变为把一批商品丢进系统,拿系统生成的草稿做筛选和微调。

先做第一个功能,第二个功能(模板库)后面再加。

3 程序员的做法(进阶):让 AI 帮你写 "提示词的提示词"

基于下面的想法,帮我写一个发给 coding Agent 的写代码用的提示词,

我需要用这个提示词来生成代码。

把你的业务逻辑描述贴在这里

要求:

  1. 提示词要包含清晰的页面布局描述

  2. 明确数据结构和交互逻辑

  3. 指定技术栈(如 React + Tailwind)

  4. 列出需要实现的核心功能点

先做单个商品版本,素材库功能本地存储

看到的是 Vite 的默认欢迎页面 ,这不是我要做的电商工具,只是项目初始化后的模板页面。

您现在看到的是什么?

这是一个标准的 Vite + React 项目模板 ,包含:

  • 两个Logo :Vite 和 React 的标志

  • 一个计数器按钮 :点击数字会增加

  • 提示文字 :告诉您可以编辑 src/App.tsx 来测试热更新

这个页面是干嘛用的?

这个页面只是 项目初始化的示例 ,用来验证:

  • ✅ Vite 项目是否创建成功

  • ✅ React 是否能正常运行

  • ✅ 热更新(HMR)是否工作

接下来我要做什么?

我需要把这个默认页面 替换成电商商品主图和文案生成工具 ,包括:

  • 左侧:商品信息输入表单

  • 右侧:生成结果预览

  • 素材库功能

  • 主图和文案生成逻辑


ai_prompt.md 文件就是我根据业务逻辑创建的 详细开发指南 ,用来指导开发实际的电商工具。

ai_prompt.md 包含的内容:

  1. 技术栈要求
  • React + TypeScript

  • Tailwind CSS

  • Vite 构建工具

  • localStorage 本地存储

  1. 核心功能详细说明
  • 左侧商品信息输入表单

  • 素材库功能

  • 右侧生成结果展示

  • 生成逻辑模拟

  1. 数据结构定义
  • ProductInfo 接口

  • MaterialItem 接口

  • GenerationResult 接口

  1. 项目结构
  • 组件目录组织

  • Hooks、Utils、Types 的划分

  1. 功能实现要点
  • 11个具体的功能实现细节

这个文件的作用:

  • 给AI IDE(如Cursor、Trae)的提示词 - 让AI根据这些要求生成代码

  • 给开发者的开发指南 - 明确要做什么、怎么做

  • 项目验收标准 - 完成后对照检查是否满足所有要求

电商商品主图与文案自动生成工具 - 前端原型开发提示词

项目概述

创建一个单页面应用,帮助电商运营人员自动生成商品的主图和文案。用户可以在左侧填写商品信息,右侧实时预览生成的结果。支持素材库本地存储功能。

技术要求

  • **前端框架**:React + TypeScript

  • **样式方案**:Tailwind CSS

  • **状态管理**:React Context 或简单的 useState

  • **图片处理**:HTML5 Canvas(用于模拟主图生成)

  • **本地存储**:localStorage(用于素材库)

  • **构建工具**:Vite

  • **UI组件**:使用 shadcn/ui 或类似的组件库

核心功能

1. 左侧商品信息输入区域

  • 商品基础信息:

  • 商品名称(文本输入,必填)

  • 商品类目(下拉选择,必填,选项:服装、电子产品、家居用品、食品、美妆、其他)

  • 品牌(文本输入,选填)

  • 材质(文本输入,选填)

  • 尺寸(文本输入,选填)

  • 颜色(文本输入,选填)

  • 商品价格(数字输入,必填)

  • 商品描述(多行文本,必填)

  • 商品卖点(动态添加/删除,最多5个)

  • 上传商品图片:

  • 白底图/简单场景图(支持拖拽上传,预览,至少1张)

  • 参考素材(选填):

  • 历史爆款截图上传(支持拖拽上传,预览)

  • 参考链接(文本输入,选填)

  • 风格偏好(下拉选择:简约、时尚、科技感、温馨、商务)

  • 适用人群(多选:学生、职场人士、宝妈、老年人、年轻人)

  • 素材库选项:

  • 是否保存商品素材到本地素材库(开关,默认关闭)

  • 生成按钮(点击后触发生成逻辑)

2. 素材库功能

  • 素材库面板(可展开/收起)

  • 显示历史保存的商品素材列表

  • 每个素材显示缩略图和商品名称

  • 点击素材可快速填充到表单

  • 支持删除素材库中的内容

  • 数据保存到localStorage

3. 右侧生成结果展示区域

  • 生成状态指示(加载中、生成完成、错误提示)

  • 主图预览区(一张看得过去、包含基础卖点的主图草稿)

  • 文案预览区:

  • 一条结构合理、含核心关键词的标题

  • 1-2句卖点文案

  • 复制文案按钮(点击复制所有文案)

  • 下载主图按钮(点击下载当前主图)

4. 生成逻辑模拟

由于是原型,我们将使用模拟数据:

  • 主图生成:使用Canvas在上传的图片上添加文字和简单效果

  • 文案生成:根据输入的商品信息,使用预设模板填充

  • 生成过程:显示加载动画,模拟2秒生成时间

界面设计要求

  • **布局**:左右分栏,响应式设计(桌面端左右并排,平板端上下堆叠)

  • **配色**:专业、简洁的电商风格,主色调建议使用蓝色系

  • **字体**:无衬线字体,清晰易读

  • **交互**:

  • 表单验证(必填项提示)

  • 图片上传预览

  • 生成过程中的加载动画

  • 复制成功提示

  • 下载功能

  • 素材库展开/收起动画

  • 素材填充表单动画

数据结构

```typescript

// 商品信息

interface ProductInfo {

name: string;

category: string;

brand?: string;

material?: string;

size?: string;

color?: string;

price: number;

description: string;

sellingPoints: string[];

productImages: File[];

referenceImages?: File[];

referenceLink?: string;

style: string;

targetAudience: string[];

saveToLibrary: boolean;

}

// 素材库素材

interface MaterialItem {

id: string;

name: string;

category: string;

thumbnail?: string; // Base64缩略图

savedAt: number;

data: Omit<ProductInfo>;

}

// 生成结果

interface GenerationResult {

mainImage: string; // Base64编码的图片

copywriting: {

title: string;

sellingPoints: string[]; // 1-2句卖点

};

}

```

项目结构

```

/src

/components

/Form

ProductForm.tsx // 商品信息输入表单

SellingPointInput.tsx // 商品卖点输入组件

ImageUpload.tsx // 图片上传组件

MaterialLibrary.tsx // 素材库组件

/Preview

ResultPreview.tsx // 结果预览组件

ImagePreview.tsx // 主图预览组件

CopywritingPreview.tsx // 文案预览组件

/hooks

useImageGeneration.ts // 图片生成逻辑

useCopywritingGeneration.ts // 文案生成逻辑

useMaterialLibrary.ts // 素材库逻辑

/utils

canvasUtils.ts // Canvas工具函数

copywritingTemplates.ts // 文案模板

storageUtils.ts // 本地存储工具

/types

index.ts // 类型定义

App.tsx // 主应用组件

main.tsx // 入口文件

index.css // 全局样式

```

功能实现要点

  1. 表单验证确保所有必填项都已填写

  2. 图片上传支持拖拽和点击上传,显示预览

  3. 卖点输入支持动态添加和删除

  4. 生成按钮点击后禁用,显示加载状态

  5. 模拟生成过程,使用Canvas创建简单的主图效果(添加商品名称和价格文字)

  6. 根据商品信息生成不同风格的文案(1条标题+1-2句卖点)

  7. 文案支持一键复制

  8. 主图支持下载

  9. 素材库保存到localStorage,支持查看、复用和删除

  10. 点击素材可快速填充到表单

  11. 响应式设计适配不同屏幕尺寸

启动命令

  • 开发:`npm run dev`

  • 构建:`npm run build`

  • 预览:`npm run preview`

请生成完整的项目代码,包括所有必要的文件和依赖配置,确保项目可以正常启动和运行。


把整个页面的上下结构改成了左右结构:

画面很丑,帮我优化现代页面:

在Trae.cn中这个提示词用国内的豆包模型跑不通,换到国际版,用stepfun跑通了。

现在你的网页已经完全现代化了,包含了:

  • ✨ 现代化的Indigo/Purple配色方案

  • 📱 响应式侧边栏导航

  • 🎯 拖拽上传图片功能

  • 🔄 流畅的微交互动画

  • 💅 专业的视觉设计

尽情享受你的新界面吧!

帮我参考这个网站的设计风格和排布,帮我重新设计网页。

输出:

颜色改了,但没有改成老师的风格。最后用老师的图做参考图。

帮我参考这个网站的设计风格和排布,帮我重新设计网页。

又试着用老师的样板图生成相同的风格,

也没有生成这种三格的格式。也不成功。

看来模型不行,怎么拿参考图垫图都不行。先继续执行:

帮我补齐这个页面的功能,比如

-首页:概览当前项目与整体进度;-商品任务列表页:完成刚才实现的核心功能;-模板库页:查看与管理收藏的图文模板;-设置页:配置基础参数(如默认生成规则、图文风格偏好

等)

保证每个页面都可以用,帮我仔细检查下

测试数据:

我现在需要测试这个用户使用过程,确保他能完全走通,请你结合下列需求生成测试数据入口,让我能够点击后很快测试全流程是否正常:

  1. 帮运营批量生成第一版图文草稿:
  • **输入(支持直接上传和批量导入素材):**

  • 商品基础信息:名称、类目、品牌、材质、尺寸、颜色、适用人群等;

  • 商品图片:白底图 / 简单场景图;

  • 每次生成支持上传额外上传历史爆款截图或参考链接,允许有参考物;

  • 支持通过 Excel 批量导入,或在页面上在线录入 / 上传。

  • 支持页面上指定是否保存商品素材到素材库,方便下次使用

  • **输出(能直接拿去上架或轻改就能上架的内容):**

  • 每个商品一张"看得过去、包含基础卖点"的主图草稿;

  • 一条"结构合理、含核心关键词"的标题 + 1--2 句卖点文案。

  • **期望的使用方式变化:**

从每批商品白手起稿变为把一批商品丢进系统,拿系统生成的草稿做筛选和微调。

我发现问题了。测试数据生成时,SVG到PNG的转换是异步的,而占位符图片是同步创建的,这可能导致占位符覆盖了实际的鞋子图片。我需要修改测试数据生成逻辑,确保正确生成和使用鞋子图片。

最后是让Trae自己去网络上找图片,并且确认了每个图片,核实以后重新修改代码。

一个数据太少,生成多个可测试用例:

发现kimi模型用起来也不错,kimi-k2.5。

提示词:

请你帮我确保需求 运动鞋 正常,可以点击一个结果收藏对应的模板,点开后能看到生成参数。

在模板库里,点击照片以后,会显示这个商品的各种详细信息,并且可有使用该模板这个键。

点击"使用此模板"以后,就会回到商品任务这一栏,并且默认填入了上面的模板块中的信息。

总结一下作业:

软件主要技术架构

1. 前端技术栈

核心技术:

  • React 18 - 用于构建用户界面的JavaScript库
  • TypeScript - 提供类型安全的JavaScript超集
  • Tailwind CSS - 实用优先的CSS框架,用于快速构建现代界面
  • Vite - 现代化的前端构建工具,提供快速的开发体验
  • React Router - 用于单页面应用的路由管理

主要功能模块:

  • 组件化架构(Form、Preview、Layout等)
  • 状态管理(React Hooks: useState, useEffect)
  • 自定义Hooks(useProductData, useImageGeneration)

2. 核心技术原理

这不是一个庞大的数据库系统,而是一个前端应用,核心技术包括:

A. Canvas图像生成技术

// 使用HTML5 Canvas API动态生成商品主图

const canvas = document.createElement('canvas');

const ctx = canvas.getContext('2d');

// 绘制图片、字、价格标签、装饰元素等

特点:

  • 在浏览器端实时生成图片
  • 无需后端服务器处理图像
  • 支持动态添加价格、品牌、卖点等信息

B. 模板化文案生成

// 基于商品信息自动生成文案

const generateCopywriting = (productData) => {

// 根据类目、品牌、卖点等生成标题和描述

特点:

  • 使用预定义的文案模板
  • 根据商品属性智能组合关键词
  • 自动生成结构化的商品标题和卖点
C. 本地存储技术

使用localStorage保存数据

localStorage.setItem('savedTemplates', JSON.stringify(templates))

特点:

  • 数据保存在用户浏览器中
  • 无需后端数据库
  • 支持模板收藏、参数保存等功能

3. 与传统电商工具的区别

传统工具 本软件
需要后端服务器处理图片 浏览器端Canvas实时生成
依赖庞大的图片数据库 基于算法动态生成
需要数据库存储模板 本地存储即可
复杂的后端架构 纯前端应用

4. 核心创新点

A. 动态图像合成

  • 不是从数据库调取现成图片
  • 而是将用户上传的商品图与装饰元素(价格标签、品牌标识等)实时合成

B. 智能文案生成

  • 基于商品属性(类目、材质、卖点等)
  • 使用规则引擎生成符合电商平台的文案结构

C. 模板复用机制

  • 保存成功的生成参数
  • 快速复用并调整生成新内容

5. 技术架构图

用户界面 (React + Tailwind)

状态管理 (React Hooks)

业务逻辑层

├── Canvas图像生成模块

├── 文案生成模块

└── 模板管理模块

数据存储 (localStorage)

浏览器本地

6. 总结

这不是一个数据库系统,而是一个:

  1. 前端图像处理应用 - 使用Canvas技术实时生成图片
  2. 智能文案生成器 - 基于规则引擎自动生成文案
  3. 模板管理工具 - 保存和复用生成参数
  4. 纯客户端应用 - 所有功能在浏览器中完成,无需后端服务器

核心价值:

  • 降低电商运营成本(无需设计师制作主图)
  • 提高内容生成效率(批量生成文案和图片)
  • 支持快速迭代(保存模板,一键复用调整)

这个软件的技术亮点在于前端图像处理智能内容生成,而不是传统的数据库应用。

笔记:

1 从想象到真实:学会向业务提问

2 从发散到收敛:锁定业务的核心痛点和功能

从"新闻助手"到"投研情报官"

普通想法是聚合各大平台新闻,省得一个个打开。但今日头条、腾讯新闻等已经做得很好了。

小明横向切分后发现,金融分析师这个人群有特殊需求:他们需要追踪特定行业动态,但信息太分散。纵向深挖他们的场景:早上看 overnight 美股动态、汇率变化;上午追踪持仓公司的公告、行业新闻;下午研究潜在投资标的,需要大量行业信息。

重构后的产品叫"投研情报官",定位是金融从业者的"信息雷达和决策助手"。

相关推荐
風清掦2 小时前
【江科大STM32学习笔记-06】TIM 定时器 - 6.2 定时器的输出比较功能
笔记·stm32·单片机·嵌入式硬件·学习
bill_man2 小时前
RHI学习笔记(2)-Qt6的RHI结构
笔记
Non importa2 小时前
二分法:算法新手第三道坎
c语言·c++·笔记·qt·学习·算法·leetcode
山岚的运维笔记2 小时前
SQL Server笔记 -- 第74章:权限或许可 第75章:SQLCMD 第76章:资源调控器
数据库·笔记·sql·microsoft·oracle·sqlserver
舟舟亢亢2 小时前
Redis知识复习笔记(上)
数据库·redis·笔记
winfreedoms13 小时前
ROS2语音&ai与控制——黑马程序员ROS2课程上课笔记(6)
人工智能·笔记
执于代码13 小时前
IEDA工具总结笔记
笔记
山岚的运维笔记15 小时前
SQL Server笔记 -- 第72章:隔离级别与锁定
数据库·笔记·后端·sql·microsoft·sqlserver
じ☆冷颜〃16 小时前
从确定性算子到随机生成元:谱范式的演进
经验分享·笔记·线性代数·矩阵·抽象代数