更改README
防拖延浏览器插件 — 让专注不再冰冷
FocusGuard 是一款 Chrome 浏览器扩展,支持专注 / 娱乐双模式切换。专注模式下自动拦截分心网站,并通过角色化动画 + 对话进行有温度的提醒,实时统计专注时长与分心次数。
学生在浏览器中学习时,频繁被视频网站、社交媒体诱惑,注意力碎片化。现有工具大多只计时不干预,对自控力弱的人几乎无效。
FocusGuard/ ├── manifest.json # Chrome 扩展配置 ├── background.js # Service Worker(快捷键、角标、Toast) ├── content.js # 内容脚本(全屏拦截遮罩、白名单计时) ├── newtab.html # 新标签页选择界面 ├── newtab.js # 新标签页逻辑(眼睛跟踪、模式切换) ├── popup.html # 弹出控制面板 ├── popup.js # 弹出面板逻辑(统计、黑白名单管理) └── images/ ├── body.png # 角色身体 ├── leftEye.png # 左眼(独立层,跟踪鼠标) ├── rightEye.png # 右眼(独立层,跟踪鼠标) ├── pointing.gif # 默认动画(指向) ├── crying.gif # 哭泣动画(”回到工作”悬停) ├── drinking.gif # 饮水动画(”休息”悬停) └── dialogBoxx.png # 对话框气泡
新标签页选择 → 专注模式 → 访问拦截网站 → 角色出现 + 对话框台词 → 悬停按钮切换表情/台词 → 点击”回到工作”跳转 Google → Popup 查看统计 → Ctrl+Shift+F 切换模式
FocusGuard 采用 GitHub Dark 色板,蓝 / 橙 / 绿三色语义体系:
proposal.md → design.md → tasks.md → Issues (功能提案) (架构设计) (任务拆解) (迭代追踪)
本项目采用 SDD 驱动 Vibecoding 的混合实践:大功能走正规 SDD 提 proposal → apply,小功能和 Bug 通过 Vibecoding 灵活快修。
共 11 个 Phase,全部完成。配套 23 个 Jest 单元测试 + ESLint + Gitea Actions CI/CD。
MIT
版权所有:中国计算机学会技术支持:开源发展技术委员会 京ICP备13000930号-9 京公网安备 11010802047560号
FocusGuard
FocusGuard 是一款 Chrome 浏览器扩展,支持专注 / 娱乐双模式切换。专注模式下自动拦截分心网站,并通过角色化动画 + 对话进行有温度的提醒,实时统计专注时长与分心次数。
项目背景
学生在浏览器中学习时,频繁被视频网站、社交媒体诱惑,注意力碎片化。现有工具大多只计时不干预,对自控力弱的人几乎无效。
核心功能
技术栈
项目结构
FocusGuard/ ├── manifest.json # Chrome 扩展配置 ├── background.js # Service Worker(快捷键、角标、Toast) ├── content.js # 内容脚本(全屏拦截遮罩、白名单计时) ├── newtab.html # 新标签页选择界面 ├── newtab.js # 新标签页逻辑(眼睛跟踪、模式切换) ├── popup.html # 弹出控制面板 ├── popup.js # 弹出面板逻辑(统计、黑白名单管理) └── images/ ├── body.png # 角色身体 ├── leftEye.png # 左眼(独立层,跟踪鼠标) ├── rightEye.png # 右眼(独立层,跟踪鼠标) ├── pointing.gif # 默认动画(指向) ├── crying.gif # 哭泣动画(”回到工作”悬停) ├── drinking.gif # 饮水动画(”休息”悬停) └── dialogBoxx.png # 对话框气泡
快速开始
安装扩展
使用方式
Live Demo 流程
新标签页选择 → 专注模式 → 访问拦截网站 → 角色出现 + 对话框台词 → 悬停按钮切换表情/台词 → 点击”回到工作”跳转 Google → Popup 查看统计 → Ctrl+Shift+F 切换模式
配色方案
FocusGuard 采用 GitHub Dark 色板,蓝 / 橙 / 绿三色语义体系:
版本迭代
SDD 工程管理
proposal.md → design.md → tasks.md → Issues (功能提案) (架构设计) (任务拆解) (迭代追踪)
本项目采用 SDD 驱动 Vibecoding 的混合实践:大功能走正规 SDD 提 proposal → apply,小功能和 Bug 通过 Vibecoding 灵活快修。
共 11 个 Phase,全部完成。配套 23 个 Jest 单元测试 + ESLint + Gitea Actions CI/CD。
团队
未来扩展
License
MIT