内容简介:从16年知道 WakaTime 后就开始使用它来记录自己的编码时间,但作为免费版只能查看最近两周的数据,于是很久之前就写了一个程序同步自己的历史数据,不过一直没找到合适的图表插件像官网那样展示数据信息。前些日子咨询了一下同事,得知了用 antv 可以绘制对应的图表数据,刚好现在也处于失业阶段,就花了几天时间又重新做了一个项目用于同步和展示 WakaTime 数据。
从16年知道 WakaTime 后就开始使用它来记录自己的编码时间,但作为免费版只能查看最近两周的数据,于是很久之前就写了一个程序同步自己的历史数据,不过一直没找到合适的图表插件像官网那样展示数据信息。前些日子咨询了一下同事,得知了用 antv 可以绘制对应的图表数据,刚好现在也处于失业阶段,就花了几天时间又重新做了一个项目用于同步和展示 WakaTime 数据。
WakaTime
WakaTime简介
WakaTime 是一款可以记录你的编码时间的工具,目前支持绝大部分主流的 IDE 以及 Chrome 浏览器。
使用步骤
- 在 个人设置 页面复制 Secret API Key ,填入对应的 WakaTime 插件中;
- 过一段时间后,你就可以在 WakaTime 网站上看到你的编码情况,如下图所示:
wakatime-sync项目
项目简介
WakaTime 提供了丰富多样的图表可以多维度地查看自己的编码时间情况。不过作为免费用户,最多只能查看自己最近14天的数据;如果要查看全部的数据,需要 $9/月的订阅费用。
还好 WakaTime 提供了 API 接口,通过接口可以获取到编码时间统计情况的原始数据(作为免费用户还是有只能查看最近14天数据的限制)。
本项目通过 WakaTime 提供的 API 接口,可以把自己的 WakaTime 数据保存在的数据库中,然后利用图表插件展示出来,目前已完成三种类型的图表展示:
- 每日项目持续时间图:
- 时间范围内活动情况:
- 每日编码耗时日历图:
项目地址
所用技术
后端:JDK1.8、SpringBoot、Jodd-HTTP、Thymeleaf;
数据库:MySQL 5.7;
前端:Moment.js、ElementUI、AntV-G2 、Echarts;
项目逻辑比较简单,就是每天会定时通过 WakaTime 的 API 抓取并保存前一天的数据,再通过图标插件展示出来。之后还会完善接口缓存、同步通知等功能;
同时使用了 AntV-G2 和 Echarts 的原因是因为持续时间图可以用 AntV-G2 实现,但日历图用 AntV-G2 实现过于复杂,就采用了用 Echarts 实现日历图;
另外本项目最初是的数据库是 MongoDB ,但是考虑到通用性和易用性后来又换成了 MySQL。MongoDB 版本的代码也实现了相关的同步展示逻辑,代码在 mongodb 分支中。
使用方法
替换或设置好 src/main/resources/application.yml 配置文件中的 wakatime.app.key 和 spring.datasource.* 相关数据库配置,采用 maven 打包的方式安装即可,支持 Docker 方式安装。
数据库建库脚本位于 sql/wakatime_sync.sql 中。
数据库使用 MongoDB 的版本位于分支 mongdb 中。
示例地址: https://wakatime.wangfeng.pro/ 。
消息通知
系统中有一个定时任务,会在每天早上09:00会根据配置信息想钉钉或微信发送上一天的编码时间信息;
需要在 application.yml 配置对应的参数:
- Server酱微信通知:按照 Server酱网站说明 获得一个 SCKEY ,设置成
wakatime.ftqq-key的值; - 钉钉机器人通知:在要获得提醒的钉钉群里面生成一个 自定义机器人 ,将机器人的 Hook 地址中的 access_token 的值设置成
wakatime.dingding-key的值;
如果不想使用对应的消息通知,请将 application.yml 中对应的参数注释掉或将值置为空
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- MetInfo 7.1.0 正式发布,产品支持视频展示,同步上线 100 套免费模板数据
- 4.博客展示
- 前端数值展示的思考与实践
- Swift 化的视图控制器展示
- “智慧中国杯”参赛展示|Shun:活得
- WhatsNew - 自动展示更新日志的提示库
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Introduction to Programming in Java
Robert Sedgewick、Kevin Wayne / Addison-Wesley / 2007-7-27 / USD 89.00
By emphasizing the application of computer programming not only in success stories in the software industry but also in familiar scenarios in physical and biological science, engineering, and appli......一起来看看 《Introduction to Programming in Java》 这本书的介绍吧!