Silence & Solitude makes...

Pu's mind space

寻代码小伙伴

更新

原型做得差不多但还有些 bug 在慢慢改的时候,我的朋友告诉我有这么个网站:
https://visualping.io/ 完整地做了我想做的事情。本着不重复发明轮子(做得没人家好)的态度,我对继续完成这个工具失去了兴趣,我后面会把代码整理以下,代码库的链接会放在这里。

update 2022-06-19:

Code repo made public here: https://github.com/guanpu/collector

!!!!!!!以下为原文!!!!!!!!!

疫情期间有一阵子每天打开网站第一件事就是去刷新新增病例数量,然后查查汇率。我就写了一个小工具, 部署在自己的服务器上,用于自动抓取并汇报这些更新。之前收藏夹里存着的一些有用的网站,比如什么时候在你的城市可以看到国际空间站,又比如什么时候有极光活动等等,也通过一键配置由该工具每天扫描。结果很有意思,这些平时躺在收藏夹里的快被遗忘的网页,现在不时地提醒我新的内容,虽然去看空间站的那一趟云太厚没看到,极光活动那次也没飞到南岛看(后来看报道确实有),但这是另一个故事,工具本身的汇报还是很准的。总之,任何你感兴趣的公开网站的任何一部分信息,都可以通过这个工具订阅其变化,生成每日(正在开发每小时/实时选项)的报告,以 RSS 或者邮件的形式汇报给你。我觉得这应该是一个可玩性很强的小工具,你甚至可以订阅当地小餐馆的菜单更新。它可以取代一众看似高大上的 app,譬如你知道某个权威的极光预测网站,再加上这个小工具,就可以不需要专门下载极光预报 APP 了。

详见 https://udigest.app, 配套的浏览器插件还没有上架,目前只能以开发者模式安装。网站名就是这个工具的名字(udigest),直接中文翻译大概可以叫“你的文摘”,不过不很好听,考虑到网络环境(浏览器插件市场还被墙着)这个工具可能不会有大陆用户,所以中文名就暂且搁置着。

本来打算自己慢慢开发,但是自己平时上完班要做饭,吃完晚饭再顺着把下饭视频看完,除了周末的时间很少能挤出开发时间,因此进展太慢。现在想添加的功能越来越多,譬如先比较新旧内容再决定汇不汇报–一个简单的例子就是我只想纽币兑人民币涨回 4.5 以上了才收到更新,而不是每天汇报一下数值–但是我码代码的速度却远不如刚开始的时候了。眼看着这个 side project 可能又要黄了(嗯,又),我决定找几个开发的小伙伴来互相监督互相帮扶。

架构

比较老的一个架构图

技术栈

从上面的架构图也能看到,主要就是 一个网站+一个浏览器插件+数个后端微服务。

UI 选的是 react+material UI, 所有后台组件目前都是 nodejs(typescript)写的,消息队列用的是 kafka,数据库 mysql。如果你不熟悉 nodejs,我们可以用其他语言重写一遍,毕竟现在只是原型阶段,go 或者 java 都可以, rust 也行,but not C#.