🕒 Contest Clocker – 再也不会错过编程比赛 🚀
Source: Dev.to

概览
你是竞技编程爱好者吗?是否经常错过 Codeforces、LeetCode 和 CodeChef 上的比赛?
Contest Clocker 是一款免费、轻量的 Chrome Extension,帮助你通过智能提醒、日历集成和强大的过滤功能,一键掌握即将到来的比赛。
💡 我为何开发它
作为一名经常参加比赛和面试准备的开发者,我常常在不同平台之间切换,忘记比赛开始时间。于是我创建了 Contest Clocker —— 一个零摩擦的解决方案,能够及时通知、过滤比赛并同步到你的 Google Calendar。
⚙️ 核心功能(v2.0)
- ✅ 多平台支持:Codeforces、CodeChef、LeetCode(更多平台即将上线!)
- 🔔 智能通知:比赛前 15 分钟 / 1 小时 / 1 天提醒
- 📅 添加到日历:一键同步至 Google 或 Outlook
- 🎯 高级过滤:按时长、平台、比赛类型筛选
- 🌓 暗/亮主题:美观 UI,切换流畅
- ♿ 可访问性:字体大小、高对比模式、ARIA 支持
- 📊 可配置视图:隐藏/显示列,紧凑模式
- ⚡ 超快加载:API 缓存,界面闪速
👨💻 适用人群
- 需要跟踪多个站点的竞技程序员
- 为面试做准备的学生(DSA 练习)
- ICPC / Kickstart / CodeJam 参赛者
- 任何想保持稳定参赛的用户
🧪 未来计划
- 个人仪表盘,展示比赛历史
- Telegram / WhatsApp 每日提醒
- 比赛难度预测
- 每 24 小时自动同步至 Google Calendar(Pro 版)
🛠 技术栈
- 前端:Vite + React
- 样式:CSS Modules,使用
localStorage实现暗/亮主题切换 - Chrome Extension:MV3 + Manifest 权限 + 弹出 UI
- Google API:日历同步 + OAuth2 权限范围
- 托管:Netlify(HTTPS + 自定义域名)
- 域名:
contestclocker.com,通过 Spaceship 购买

🧠 工作原理
它最初是一个副项目,如今已经拥有数十名日活用户。我刚刚为它添加了精致的 UI、更多过滤选项以及面向隐私的域名配置,以配合 Google OAuth。
如果你正在开发 Chrome Extension,欢迎查看我如何处理域名、SSL 以及隐私政策,从而顺利通过 Google OAuth 验证。
🤝 欢迎反馈
试用后告诉我你希望下一步加入哪些功能。欢迎提出建议、报告 bug,甚至直接贡献代码!
保持稳定,保持竞争力。
让 Contest Clocker 处理时间安排——你只需专注于取胜。
Tags: #competitiveprogramming #chromeextension #calendar #javascript #codechef #codeforces #Leetcode #notification #productivity