A modern, lightweight, and beautiful coding time tracker for Windows. Built with C++ and Web Technologies.
Code Time Counter 是一个运行在 Windows 平台上的极简代码时长统计工具。它在后台运行,自动检测你是否正在使用 IDE 或开发工具,并累计你的编程时间,自动生成 Shields.io 格式的 Badge.
- 🎯 智能自动计时:自动检测当前活动窗口。只要你在使用 Visual Studio, VS Code, JetBrains 系列, 浏览器 (查阅文档) 或 终端工具,它就会自动开始计时。
- ☁️ Badge 生成:实时更新本地的
badge.md文件,包含 markdown 格式的时间统计徽章,可直接复制到 GitHub Readme。 - 🔋 轻量级:使用 C++ 编写,资源占用低。
- 💾 数据持久化:自动保存统计数据和 UI 配置(背景图路径、模糊度、窗口位置)。
- Core: C++17 (MinGW-w64)
- GUI Engine: webview (Edge/Chromium 内核)
- Frontend: HTML5, CSS3 (Flexbox, Backdrop-Filter), JavaScript (ES6+)
- System API: Windows API (Win32), DWM API (Rounded Corners), Shell API (Tray Icon)
确保你的开发环境安装了以下工具:
- MinGW-w64 (带
g++支持 C++17) - WebView2 Runtime (Windows 10/11 通常自带,如无请安装 Edge)
确保你的源码目录结构如下:
CodeTracker/
├── include/ # 头文件 (tracker.h, webview.h)
├── src/ # 源代码 (main.cpp, tracker.cpp, etc.)
├── resources/ # 资源文件 (图标, manifest)
├── ui/ # 前端界面 (index.html)
├── static/ # 静态资源 (图标文件)
└── build.bat # 编译脚本
项目自带一键编译脚本。双击运行根目录下的 build.bat 即可:
./build.bat
编译成功后,可执行文件将生成在 bin/CodeTracker.exe。
- 启动:运行
bin/CodeTracker.exe。 - 计时:打开你常用的开发软件(如 VS Code),程序会自动检测并开始计时,状态变为 "Tracking"。
- 个性化设置:
- 点击左上角的 ☰ 菜单。
- Upload Background:选择一张你喜欢的图片作为背景(图片会自动保存到
bin/bg/目录)。 - Blur Intensity:拖动滑块调整界面的模糊程度。
- 最小化:点击右上角的
×,程序会隐藏到系统托盘。 - 退出:在左上角菜单中选择 "Exit Application",或右键点击托盘图标选择 "Exit Completely"。
程序运行时会在 bin/ 目录下生成一个 badge.md 文件。
内容示例如下:
程序会自动在同级目录下生成以下文件,请勿随意删除:
code_time.dat: 存储累计的总秒数。config.ini: 存储 UI 配置(窗口位置、背景路径、模糊度)。
- 置顶按钮
- 置顶后左键操作时忽略窗口
- Github action 自动生成badge
Important
本项目遵循 MIT License © Haruko386
