你好,我是 Liyuanjie,网名 tim-lyj,一个初中生。喜欢写代码,也爱折腾数码产品——新出的东西总想弄明白它到底是怎么做出来的。

2023 年开始自己写着玩,没系统学过。一般是想到要做什么,就去查怎么做,做完也就记住了。卡住的时候先翻官方文档,看不懂就搜,搜不到就改一行试一次,看结果有什么变化。报错信息我会先读一遍再动手,比瞎改快。

我在做什么#

现在主要在做 HomeChat,一个给家里用的局域网聊天工具。找台电脑当服务器一直开着,家里人手机连上同一个 WiFi,浏览器打开就能聊。不用注册,也不用装 App,聊天记录加密存在自己的电脑上。怎么装、怎么用都写在 Home Chat 使用说明 里了。

本来只想做个能聊天的,结果越加越多:群聊、发图片、发文件、按住说话、撤回、阅后即焚,还有一个只显示数字、看不到聊天内容的后台。服务端只用了一个 ws 库,剩下都是我自己写的,加密那部分也是。

另外几个做得久一点的是《权衡之道》《易杰云呼》和「全能计算器」:

  • 《权衡之道》:政治讽刺题材的像素格子城市经营游戏,纯 HTML5 + Canvas 写的,地图 512×512,一共 28 个结局——从”小康社会”到”锒铛入狱”都有。
  • 《易杰云呼》:给做电话外呼的人用的软件,前端是一个单页应用,后端 Node.js + Express + SQLite,带验证码和四层限流。现在是闭源的,之后会开。
  • 全能计算器:用原生 Python 写的,没用任何第三方库。0.1 + 0.2 算出来就是 3/10,√8 会化成 2√2,位数不设上限。界面和公式排版都是我自己画的。

我的世界#

我在《我的世界》里也做东西,网易版的开发者名字就是我的网名 tim-lyj。

网易版已上线(免费):

类型名字模组码
模组超平坦起床刷新方块大陆7573464
地图忧郁兔地图模板3913086
地图随心矿车体验版2691546

在网易版《我的世界》里点「模组中心」,直接搜数字就能找到。三个都是免费的。

国际版(没上线,做成了双击就能导入的包):

  • 永恒之钢 —— 一个锭加五件工具(剑、镐、斧、铲、锄),打包成 .mcaddon
  • 更多的音乐唱片 —— 把 13 张唱片换成真歌,打包成 .mcpack

这两个没上线是因为数值还没定好(钢的工具该比钻石强还是弱), 还有唱片涉及歌曲版权,自己听没问题,公开发布不行。

我平时用什么#

写代码用 VS Code,跑东西用 macOS 自带的终端,代码用 Git 管着,传到 GitHub 上。

服务器方面:用的是雨云的服务器(2 核 2G,8Mbps),上面跑后端,装了宝塔面板管着; 域名是在阿里云买的。这个博客本身放在 Cloudflare Pages 上,不占服务器的资源。

家里那台 Mac 是另一个用途 —— HomeChat 的服务器就跑在它上面,局域网里用,不用公网 IP。

调试主要靠一个个跑自检脚本。加密那层有标准测试向量,两台手机之间的收发也写了脚本,改完跑一遍,心里踏实点。

会的东西#

编程语言:JavaScript、Python、Java、C++、HTML / CSS

常用的工具:VS Code、终端、Git、GitHub、Cloudflare Pages

关注的东西:数码评测、硬件分析

联系我#

有问题、有想法,或者发现了什么 bug,都可以发邮件给我:liyuanjie0808@gmail.com。

也可以在 GitHub 上提 issue。我不一定回得快,但每条都会看。