上个学期,孩子的体育成绩不甚理想,其中就包括仰卧起坐,决心在暑期好好锻炼一番。
经过几次训练,发现孩子的挑战性不强,于是考虑制作一个APP来把孩子每次训练的结果记录下,激励他不断挑战。
APP需求
- 手机上可以容易使用,但是无需安装,也无需服务器
- 能够记录每次成绩,包括一次训练中,时间段成绩可做对比
- 显示最高成绩
根据需求,我选择以下技术作为技术栈
- PWA(https://docs.microsoft.com/en-us/microsoft-edge/progressive-web-apps-chromium/)
通过PWA,虽然是网站,却能像APP一样安装,方便使用 - Simple.css (https://simplecss.org/demo)
这次就想简单做一个单页面网站,所以选择一个最最简单的基础CSS即可。SimpleCSS提供了一些基础如Label,Table等控件 - jQuery(https://jquery.com/)
这次JS使用较多,但是又不想用vue,elementUI这套复杂架构。于是回归jQuery - TaffyDB(https://taffydb.com/)
JS的DB其实很多,选择它仅仅是因为我按照Simple来检索,它是第一个。基础的功能对我足够了。 - Chart.js (https://www.chartjs.org/)
和TaffyDB一样,JS的Chart也是很多的。这个样式还算漂亮,所以就选择它了。 - Pantry(https://getpantry.cloud/)
本来就想做一个单机缓存的website,但是制作当中发现用一些免费的JSON保存服务器也不错,而且能实现DB服务器端存储,所以就挑选了一个。本来想找一个国内的,没有找到,就找了一个使用最简单(也是安全最低的)加拿大的产品。延迟这些都能接受。 - gitee(https://gitee.com/) 和gitee pages
我承认,我最开始用的是github。可是实在忍受不了网络一会儿就被墙了,太难了。有一次修改版本呢,让孩子在垫子上躺了30分钟。
gitee也不错,相比Github,source管理没啥区别。静态网页存储服务Page,一个是需要实名认证,其次是不像Github可以自动反映最新提交,需要手动执行更新。
经过最初两天的编程,以及后面几周周末的零星修改。程序就完成了,
程序地址:https://gitee.com/infony/situp
页面地址:https://infony.gitee.io/situp
界面为: