)
番茄钟 (Pomodoro Timer)一个基于 Electron 构建的跨平台番茄工作法计时器桌面应用。界面简洁优雅支持系统托盘、桌面通知、任务栏进度等原生特性帮助你高效管理专注时间。✨ 功能特性 经典番茄工作法— 25 分钟专注 5 分钟短休息每 4 轮触发一次 15 分钟长休息⭕ 环形进度条— SVG 动态圆环倒计时渐变色 呼吸光效视觉反馈直观⚙️ 可自定义时长— 专注时间 (1–120 分钟)、短休息 (1–30 分钟)、长休息 (1–60 分钟)、每轮番茄数 (1–10) 均可调节 桌面通知— 阶段结束时弹出系统通知提醒你切换状态 音频提示— 阶段完成时播放上行琶音 (C5→E5→G5)最后 3 秒滴答倒计时 系统托盘— 关闭窗口自动最小化到托盘托盘菜单可快速控制 开始/暂停/退出 任务栏进度条— Windows 任务栏图标实时显示当前阶段剩余进度⌨️ 键盘快捷键— 空格 (暂停/继续)、→ (跳过阶段)、R (重置)、Esc (关闭设置或最小化) 数据持久化— 每日番茄数自动保存跨天自动清零设置项持久存储 安全设计— 启用contextIsolation禁用nodeIntegration通过contextBridge安全通信 零前端依赖— 界面、音频合成、图标生成全部手写无第三方 UI 库️ 界面预览️ 技术栈层级技术桌面框架Electron 33前端原生 HTML5 CSS3 JavaScript (无框架)音频Web Audio API持久化localStorage JSON 文件 (Electron userData)图标纯 Node.js 手写 PNG 编码 (zlib DEFLATE) 项目结构pomodoro-app/ ├── main.js # Electron 主进程 — 窗口/托盘/通知/IPC ├── preload.js # 预加载脚本 — contextBridge 安全桥接 ├── renderer/ │ ├── index.html # 主界面 HTML │ ├── app.js # 前端核心 — 番茄钟状态机 交互逻辑 │ └── style.css # 样式 — 暗色主题、环形进度、动画 ├── assets/ │ ├── icon.png # 应用图标 (32×32) │ └── icon-256.png # 应用图标 (256×256) ├── generate-icon.js # 图标生成工具 (无依赖纯 Node.js) ├── package.json # 项目清单 ├── 启动番茄钟.bat # Windows 启动脚本 (自动安装依赖) └── 启动番茄钟.vbs # Windows 静默启动脚本 (无命令行窗口) 快速开始环境要求Node.js 12npm 6安装与运行# 1. 进入项目目录cdpomodoro-app# 2. 安装依赖npminstall# 3. 启动应用npmstartWindows 用户也可以直接双击启动番茄钟.bat首次会自动安装依赖或启动番茄钟.vbs静默启动无命令行窗口。生成图标nodegenerate-icon.js图标将生成到assets/目录下。⌨️ 键盘快捷键按键功能Space暂停 / 继续计时→(右箭头)跳过当前阶段R重置计时器Esc关闭设置面板 / 最小化到托盘⚙️ 配置项点击标题栏右侧的齿轮图标 ⚙️ 打开设置面板配置项默认值范围专注时间25 分钟1–120 分钟短休息5 分钟1–30 分钟长休息15 分钟1–60 分钟每轮番茄数41–10设置和每日统计会自动保存重启后依然有效。