“协力抗疫,码力全开”线上公益黑客马拉松 44 疫程 东城致虚

2020-02-07 12:59:20 浏览数 (1)

新型冠状病毒肆虐的当下,作为一个程序员,希望也能为此做出贡献。当前患者不断确诊,患者的历史行程也在持续披露中。如果有一个应用可以帮助用户查询自己的行程中是否有患者确诊,同时支持订阅行程,在行程出现疫情时及时通过微信通知用户。这样可以及时帮助用户发现危险,增强防护能力。这时正好看到“协力抗疫,码力全开”线上公益黑客马拉松,就报名参加了。

设计思路

一开始就决定基于小程序和云开发搭建。

小程序本身的即用即走以及订阅通知机制非常适合我的应用场景。

而云开发所倡导的 serverless 也是我一直非常感兴趣和愿意尝试的,在这种轻量级应用中非常合适。

技术架构

小程序框架

使用 uniapp,基于 Vue 的语法。因为之前开发过几个小程序,都是使用的 uniapp,其本身对 Vue 的语法支持非常完善,而且社区友好。

CSS 框架

tailwindcss。这个框架基于原子类设计思想,奉行 utility-first,是作者多年工程化思路的结晶,整体体验下来在开发效率和自定义之间取到了一个比较好的平衡。

后端框架

基于云开发,6 个云函数加 1 个触发器。免费,深度集成微信,不需要域名、服务器、数据库,提供定时触发器,轻量级应用的不二之选。

架构

使用领域驱动设计(DDD)。最近一直在看架构方面的书,DDD 感觉是应对软件复杂度比较好的设计范式。

结果展示

查询患者行程

  • 点击右上角的按钮订阅对应的行程通知
  • 点击患者行程可以复制来源链接到浏览器中打开

订阅界面

订阅提醒

历史通知

0 人点赞