前述
不知不觉接触AI也很久了,但说到使用也就从年后开始,那段时间听一个后端同事说使用cursor写了个项目,感觉很不错。同组前端同事也开始使用,后面他们都开始说牛的一批,于是乎也加入了AI大军!
那段时间生活层面研究了各个平台提供的app,但是使用下来只能说一般,也就提供点小建议,错误太多,幻觉也太多。
同时工作中也开始研究ai编程,通义灵码、CodeGeex、Cursor、Github Copilot、Augment code、Trace、Trace cn、Code Buddy、Qoder
前面最好用的还是cursor,他的tab很智能,项目中tailwindcss推荐很准确,代码补全也很棒,但是生成项目感觉算是一般,后面官方封禁严重也就不咋研究了。
最近也在一直思考,用ai写一些项目看看效果怎么样,有没有进化的很厉害,于是想来想去,让ai写个浏览器插件玩一下
准备工作
- 豆包 | 元宝 | 其他
- vscode | cursor | trace
- 我这里使用豆包和augment code
1、让豆包写一份需求文档
文案:
写个浏览器插件,点开插件,弹出面板,面板中有刷新按钮和复制按钮,点击刷新按钮随机出现一句话(正能量语句),要求使用vue3及vite最新脚手架,UI使用vant,帮我生成一份需求文档,以 Markdown格式提提供下载
具体信息生成如下:
# 正能量句子浏览器插件需求文档
## 文档信息
| 项目名称 | 正能量句子浏览器插件 | 文档版本 | V1.0 |
|----------|----------------------|----------|------|
| 编写日期 | 2025-11-04 | 编写人 | 豆包编程助手 |
| 适用范围 | 前端开发人员、测试人员 | 核心目标 | 开发一款轻量型浏览器插件,支持随机展示正能量句子及复制功能 |
## 1. 项目概述
### 1.1 项目背景
现代用户日常使用浏览器时,常面临工作压力、学习焦虑等场景,需要即时的正能量激励。本插件旨在提供轻量、便捷的正能量句子展示功能,无需跳转页面,点击插件即可获取激励内容。
### 1.2 核心价值
- 轻量无冗余:仅保留核心功能,不占用过多浏览器资源
- 便捷高效:一键刷新获取新句子,一键复制使用
- 视觉舒适:基于Vant UI打造简洁美观的交互界面
- 技术先进:采用Vue3 + Vite最新技术栈,保证开发效率和运行性能
### 1.3 目标用户
所有使用现代浏览器(Chrome、Edge、Firefox等)的用户,尤其适合职场人士、学生、需要日常激励的人群。
## 2. 功能需求
### 2.1 核心功能清单
| 功能模块 | 功能点 | 优先级 |
|----------|--------|--------|
| 插件启动 | 点击浏览器插件图标,弹出功能面板 | 高 |
| 句子展示 | 面板默认加载并显示一条随机正能量句子 | 高 |
| 刷新功能 | 点击"刷新"按钮,随机切换新的正能量句子 | 高 |
| 复制功能 | 点击"复制"按钮,复制当前显示的句子到剪贴板 | 高 |
| 交互反馈 | 复制成功/失败、刷新加载状态给予视觉提示 | 中 |
### 2.2 详细功能描述
#### 2.2.1 插件启动功能
- 触发条件:用户点击浏览器工具栏中的插件图标
- 功能表现:弹出固定尺寸的功能面板,面板加载完成后立即显示一条随机正能量句子
- 异常处理:若插件加载失败,面板显示"加载失败,请重试"提示,支持手动刷新
#### 2.2.2 句子展示功能
- 展示规则:句子居中显示,自动换行,字体清晰易读
- 内容要求:句子库包含至少50条正能量语句,涵盖激励、治愈、成长等主题
- 初始状态:插件首次启动或面板刷新后,随机从句子库中抽取一条展示
#### 2.2.3 刷新功能
- 触发方式:用户点击面板中的"刷新"按钮
- 功能表现:
1. 点击瞬间显示加载状态(如按钮图标旋转或加载动画)
2. 加载完成后替换为新的随机句子
3. 避免连续两次出现相同句子
- 响应时间:加载新句子的响应时间≤300ms
#### 2.2.4 复制功能
- 触发方式:用户点击面板中的"复制"按钮
- 功能表现:
1. 点击后复制当前显示的完整句子到系统剪贴板
2. 复制成功:显示"复制成功!"提示,持续1.5秒后自动消失
3. 复制失败:显示"复制失败,请重试"提示,持续2秒后自动消失
- 兼容性:支持Windows、macOS、Linux系统的剪贴板复制
#### 2.2.5 交互反馈功能
- 按钮状态:
- 未操作时:按钮显示默认样式
- 点击中:按钮显示按压状态
- 加载中:刷新按钮显示加载动画
- 提示样式:提示信息居中显示在面板底部,不遮挡句子和按钮
## 3. 技术栈要求
### 3.1 核心技术栈
| 技术类别 | 技术选型 | 版本要求 |
|----------|----------|----------|
| 前端框架 | Vue.js | 3.x(最新稳定版) |
| 构建工具 | Vite | 最新稳定版 |
| UI组件库 | Vant | 4.x(最新稳定版) |
| 插件规范 | 浏览器扩展Manifest | V3(主流浏览器支持版本) |
| 语言 | JavaScript/TypeScript | ES6+ / TypeScript 5.x+ |
### 3.2 技术实现要求
- Vue3:使用Composition API进行开发,遵循Vue最佳实践
- Vite:配置合理的打包规则,确保插件体积≤500KB
- Vant:仅引入所需组件(Button、Toast等),避免不必要的体积冗余
- Manifest V3:
- 配置正确的插件图标、名称、描述
- 声明必要的权限(仅需剪贴板权限)
- 弹出页面使用Vue3构建的HTML文件
## 4. UI/交互要求
### 4.1 整体风格
- 风格定位:简洁、清新、治愈,符合正能量主题
- 配色方案:
- 主色调:浅蓝色(#409EFF,Vant primary色)
- 背景色:白色(#FFFFFF)
- 文字色:深灰色(#333333)
- 提示色:成功色(#67C23A)、失败色(#F56C6C)
- 字体:使用系统默认无衬线字体,确保跨平台一致性
### 4.2 面板设计
- 尺寸:固定宽度320px,高度220px(适配主流浏览器插件弹窗尺寸)
- 布局:
- 上半部分:句子展示区(占面板70%高度)
- 下半部分:功能按钮区(占面板30%高度)
- 样式:面板带轻微圆角(8px)和阴影(rgba(0,0,0,0.1)),无边框
### 4.3 按钮设计
- 样式:使用Vant默认按钮样式,类型为"primary"(刷新按钮)和"default"(复制按钮)
- 尺寸:中等尺寸(Vant button size="middle")
- 排列:两个按钮横向排列,间距20px,居中显示在按钮区
- 图标:
- 刷新按钮:搭配Vant "refresh"图标
- 复制按钮:搭配Vant "copy"图标
- 文字:按钮图标右侧显示文字("刷新"、"复制")
### 4.4 句子展示设计
- 字体大小:16px
- 行高:1.6
- 内边距:上下左右各16px
- 溢出处理:句子过长时自动换行,不出现横向滚动条
### 4.5 提示反馈设计
- 提示框样式:使用Vant Toast组件,类型对应成功/失败状态
- 位置:显示在面板底部中间位置,距离面板底部10px
- 透明度:90%,避免遮挡下方内容
## 5. 开发规范
### 5.1 代码规范
- 遵循ESLint + Prettier代码规范,确保代码风格一致
- Vue组件命名:使用PascalCase命名法(如SentencePanel.vue)
- 工具函数:抽取公共功能(如句子库、复制工具)到utils目录
- 注释要求:关键逻辑、组件功能、接口参数需添加中文注释
### 5.2 目录结构
```
plugin-positive-sentence/
├── public/ # 静态资源(插件图标等)
├── src/
│ ├── components/ # 公共组件
│ │ └── SentencePanel.vue # 主面板组件
│ ├── views/ # 页面组件(弹窗页面)
│ │ └── Popup.vue # 弹窗入口页面
│ ├── assets/ # 资源文件(如样式补充)
│ ├── utils/ # 工具函数
│ │ ├── sentenceBank.js # 正能量句子库
│ │ └── copyUtil.js # 复制工具函数
│ ├── main.js # 入口文件
│ └── style.css # 全局样式
├── .eslintrc.js # ESLint配置
├── .prettierrc # Prettier配置
├── vite.config.js # Vite配置
├── package.json # 依赖配置
└── manifest.json # 插件配置文件(Manifest V3)
```
### 5.3 兼容性要求
- 浏览器支持:Chrome(≥88)、Edge(≥88)、Firefox(≥91)、Opera(≥75)
- 系统支持:Windows 10+、macOS 10.15+、Linux(主流发行版)
- 响应式:适配不同屏幕分辨率,面板尺寸保持固定,内容自适应
### 5.4 数据要求
- 句子库:
- 数量:至少50条正能量句子,无重复内容
- 格式:按数组形式存储,每条句子为字符串(长度10-30字)
- 可扩展性:句子库单独存储,支持后续手动添加或接口扩展
## 6. 交付物清单
| 交付物名称 | 说明 | 格式/类型 |
|------------|------|-----------|
| 源代码包 | 完整的项目源代码,包含所有配置文件和依赖描述 | 压缩包(.zip) |
| 插件安装包 | 打包后的浏览器插件文件,支持直接安装 | CRX格式(Chrome)、ZIP格式(通用) |
| 技术文档 | 开发说明、构建步骤、目录结构说明 | Markdown文件(.md) |
| 使用手册 | 插件安装教程、功能使用说明 | Markdown文件(.md) |
| 句子库文件 | 单独的正能量句子库文件(可扩展) | JavaScript文件(.js) |
## 7. 附录
### 7.1 正能量句子示例(部分)
1. 每一次努力,都是在为未来铺路
2. 保持热爱,奔赴下一场山海
3. 今日的沉淀,是明日的光芒
4. 慢慢来,谁还没个努力的过程
5. 生活明朗,万物可爱,未来可期
6. 你只管向前,时间自有答案
7. 平凡的日子里,也要闪闪发光
8. 困难是暂时的,成长是永恒的
9. 做自己的太阳,无需借谁的光
10. 每一次坚持,都离梦想更近一步
### 7.2 Manifest V3配置示例
```json
{
"manifest_version": 3,
"name": "正能量句子",
"version": "1.0.0",
"description": "一键获取正能量句子,治愈你的每一天",
"action": {
"default_popup": "dist/index.html",
"default_icon": {
"16": "public/icon16.png",
"48": "public/icon48.png",
"128": "public/icon128.png"
}
},
"permissions": ["clipboardWrite"],
"icons": {
"16": "public/icon16.png",
"48": "public/icon48.png",
"128": "public/icon128.png"
}
}
```
---
**下载说明**:将本文档复制到文本编辑器(如VS Code、记事本),保存为 `正能量句子浏览器插件需求文档.md` 即可完成下载。
2、vscode中新建项目,并新建.md文件将需求复制进去
3、ai开发
在augment code插件中选中需求,并给ai布置任务,这边使用的是最新的Claude Sonnet 4.5
文案:
@正能量句子浏览器插件需求文档.md 请根据此需求文档开发出浏览器插件项目,步骤要清晰,过程与我确认
开发完成清单提示
开发过程token消耗惊人
4、浏览器打开开发者工具
5、加载本地打包文件
点击扩展管理,开启插件即可
6、上传到扩展市场
注册个edge开发者,然后上传项目压缩包即可
7、安装扩展
在Edge安装市场中搜索正能量即可看到,安装并体验
8、代码
代码完全是由ai生成,未做修改。UI交互及功能已经比较完善,等后期再去迭代其他功能了。
总结:
AI进化的很快,已经超出我的预期,做出的项目效果真的很棒,与半年前对比已经不可同日而语,已经像是一位高级开发工程师,而且效率拉满,代码质量也是经验。照此下去,肯定又是一大批程序员要失业了。
至于未来路在何方,无人可知,但要紧跟时代前沿,多去接触AI拥抱AI使用它研究它,愿我们都能进步,踏上AI浪潮!