npm install?不。CDN 引入?也不。想要拿到 htmx 4.0 的源码,你得先打通四个关卡,击败最终 BOSS,然后在一台 Game Boy 上读取卡带里的内容。
7 月 26 日,htmx 作者 Carson Gross 在官方周边商店上架了「htmx 4: the game」,一张售价 25 美元的实体 Game Boy / Game Boy Color 卡带。商品页的宣传语是这样写的:
HTMX 4.0,史上第一个在 Game Boy 平台独占发布的 JavaScript 库。
是的,这是一个梗。但这张卡带是真的。

游戏由 Stephen Mitchell(网名 scum)用 GBStudio 手工打造,是一个受马力欧启发的横版平台跳跃游戏。四个关卡跨越三种地形:收集酸黄瓜(pickle),压缩客户端 JavaScript,躲避「slop」。最后一关进入一座「slop 工厂」,最终 BOSS 叫 Warren Buffering。按 Carson 的说法,是「一个我经常在网上互怼的朋友」。打赢他,就能解锁 htmx 4.0 的源代码。
但这不只是一个玩笑。跳过大版本号 3 直接发布 4.0,背后确实有技术原因。htmx 此前在底层依赖 XMLHttpRequest 做网络请求,而 4.0 要将其全面替换为 fetch()——这是一个涉及签名变更、行为不同的破坏性更新。Carson 曾在文章《The fetch()ening》中详细解释过:他多年前承诺永远不会发布不兼容的 2.x 版本,所以 v3 被跳过,直接进 v4。
而这次「Game Boy 独占发布」,则是把一次正经的技术迭代包裹在了一颗开发者文化的糖衣里。
如果你熟悉 htmx 社区,对这种操作不会感到意外。此前他们的周边商店卖过「CEO of htmx」T 恤、48 盎司的超大马克杯(因为有人吐槽杯子太小,Carson 第二天直接上架了 1.4 升的怪物级杯子),还有「htmx Sucks」卫衣和连体睡衣。整个项目的气质就是:技术是认真的,但姿态是自嘲的。
Hacker News 社区开发者对它的讨论大致分两种:一半是 htmx 用户由衷赞美这个库「彻底改变了我构建 Web 应用的方式」——有人用它配合服务端模板替换掉了三分之二的 JavaScript,有人发现 Google 页面速度评分从 60 跳到了满分。另一半则围绕着那些荒谬的周边商品互相调侃——「那不是杯子,那是桶」、「我喝 500 毫升的保温杯别人都看我奇怪,1.4 升是什么概念」。
卡带由中国工厂生产,封面由 Fiverr 设计师 Ash 绘制(她也是 htmx 书籍《Hypermedia Systems》的封面画师),Jarason Banes 负责卡带制作和封面设计。整套流程走的正规周边商品供应链。
那么回到最初的问题:卡带里真的有 htmx 4.0 的源代码吗?有。打通游戏就能看。但你也可以等,真正的 4.0 版本最终还是会出现在 GitHub 和 npm 上。只不过到那个时候,那些打通了四关的人已经有了吹牛的资格。
参考来源: