一个 4 千星小工具的谢幕:JSON Formatter 归档,开源世界又失去了一件趁手兵器

当一个熟悉的开发者工具突然说再见
如果你经常和 API 打交道,大概率见过这样一种时刻:浏览器里打开一个 JSON 接口,迎面扑来的是一整页密密麻麻的大括号、方括号、双引号和逗号,像有人把数据库直接拍在你脸上。这个时候,一个好用的 JSON 格式化工具,简直像把凌乱仓库里的灯一下打开。
GitHub 上颇受欢迎的项目 callumlocke/json-formatter,就是这样一把“趁手的小刀”。它的定位很朴素:让 JSON 更容易阅读。作为 Chrome 扩展,它帮助开发者直接在浏览器里查看和探索 JSON API 响应。这个项目积累了 4.1k Star、959 次 Fork,对一个并不张扬、也不追热点的工具来说,这个成绩已经相当体面。
但现在,故事转了个弯。项目 README 顶部已经清楚写明:ARCHIVED。作者 Callum Locke 表示,自己不再以开源项目的方式继续开发 JSON Formatter,而是准备转向闭源、商业化模式,目标是打造一个更完整、带高级功能的 API 浏览工具。与此同时,他保留了仓库供社区 fork,并发布了最后一个开源版本 JSON Formatter Classic,给那些只想要一个“本地、简单、不再更新也没关系”的老用户留了一条路。
这类公告看起来平静,甚至有点克制,但对很多开发者来说,它的情绪并不轻。因为我们失去的不是一个花哨的 AI 产品,而是那种每天可能只用 20 秒、却能省掉无数烦躁的基础工具。
小工具,大依赖:为什么它的归档值得聊
JSON Formatter 不是那种会登上发布会大屏幕的明星产品。它没有大模型,没有融资故事,也没有“重新定义工作流”的口号。它只是安静地待在浏览器里,在你打开接口返回数据时,帮你把原本难以下咽的原始文本,变成可折叠、可浏览、可快速定位的结构化内容。
偏偏就是这种工具,最容易被低估。
过去十几年,Web 开发、移动应用、云服务一路狂奔,API 已经成为软件世界的共同语言。前端调后端、客户端连服务端、微服务之间互相通信,JSON 几乎无处不在。很多开发者对 JSON Formatter 的依赖,不是“喜欢”,而是“习惯到察觉不到它的存在”。只有当它停止更新,甚至消失时,大家才会突然意识到:原来自己每天都在踩着这些小工具前进。
这也是开源生态一个很有意思、也有点辛酸的地方。最基础、最有用、最广泛渗透的工具,往往并不赚钱。一个浏览器扩展即便拥有几千颗 Star,也不等于能为开发者带来稳定收入。用户会真诚地感谢,会在社交平台转发,会在 GitHub 点星标,但真正持续付费的人,常常非常少。于是,越是“人人都用得上”的项目,越容易卡在商业模式这一关。
从这个角度看,JSON Formatter 的归档不是孤例,而是一个缩影:开源世界不缺掌声,缺的是可持续的现金流。
从 Manifest V3 到商业化:独立开发者的现实考题
如果把时间线拉长一点,这个项目其实一直在努力跟上浏览器生态的变化。仓库历史里能看到一个颇有分量的节点:为 Chrome Manifest V3 进行大改写,并加入暗黑模式。对普通用户来说,这可能只是一次“扩展还能继续用”的更新;但对维护者来说,这通常意味着大量重构、适配和测试。
浏览器扩展这几年并不好做。平台规则在变,权限体系在收紧,商店审核越来越复杂,扩展还要兼顾性能、安全、兼容性。你以为作者在维护一个“小插件”,其实他维护的是一整套被平台推着走的技术债和生态变化。
所以,Callum Locke 这次的选择,我不太愿意简单地理解为“开源背叛了理想”。更准确地说,这是一个成熟开发者对现实做出的重新计算:如果继续留在开源模式下,这个项目很可能只能维持“能用”;而转向商业化,也许才有机会做成“更完整的产品”。
当然,这里面也有争议。闭源之后,用户会失去透明度,社区贡献的空间会大幅减少,产品的发展方向也更受商业目标驱动。尤其是开发者工具领域,大家天然更信任开源,因为这类工具往往贴近数据、接口和工作流。一旦变成商业软件,用户首先会问三个问题:数据怎么处理?本地还是云端?哪些高级功能会收费?
这恰恰是作者接下来必须回答的事。因为开发者愿意付费,但前提是产品要足够好,也足够让人放心。
“Classic” 留下来,但开源用户得到的是体面告别,不是未来承诺
这次公告里一个很微妙、也很聪明的安排,是作者没有直接把旧仓库一关了之,而是保留代码,并把最终开源版本单独以 JSON Formatter Classic 的形式放出来。这个动作很像一场体面的告别:你怀念简单时代,我给你留一把老钥匙;但新房子,我打算收门票了。
这对老用户来说,至少减少了被“突然抛弃”的感觉。一个本地运行、只做 JSON 格式化、不再更新的扩展,对很多开发者其实已经够用。尤其在一些稳定的调试场景里,用户未必需要订阅制、协作功能、云同步或者团队管理面板,他们需要的只是“把这坨 JSON 给我排整齐”。
但“Classic” 终究只是经典版,不是未来版。浏览器平台会继续变化,安全策略会继续提高门槛,接口调试的需求也在升级。今天开发者不只想看 JSON 漂不漂亮,还想顺手搜索字段、比较响应差异、查看请求上下文、理解 API 结构,甚至和 AI 辅助分析结合起来。换句话说,单纯的“格式化”正在从一个独立功能,变成更大工作流中的一个组件。
这也是为什么作者提到自己要做的是“更全面的 API 浏览工具”。这个判断我认为是成立的。因为如今和 Postman、Insomnia、Hoppscotch,乃至浏览器 DevTools 竞争的,不再只是某个单点功能,而是谁能把“请求、响应、调试、理解、协作”串成一条更顺手的链路。
JSON Formatter 过去赢在轻、快、直接。未来如果要商业化,它就不能只靠“把 JSON 变好看”这一件事活下去。
开源工具的宿命问题:我们真的愿意为“顺手”买单吗
这件事最值得深想的,不是某个仓库归档,而是一个老问题再次浮出水面:开发者到底愿不愿意为日常效率工具付费?
大家嘴上都支持开源,心里也知道开源重要,但到掏钱的时候,很多人还是默认“最好免费”。这并不虚伪,只是互联网时代养成的一种集体习惯。问题在于,浏览器扩展、CLI 工具、格式化器、调试器这些基础设施级小工具,恰恰最难靠广告或流量变现。它们不像消费 App 那样能塞订阅弹窗,也不像企业软件那样容易签大单。于是开发者只能在捐赠、赞助、商业授权、增值服务之间艰难找路。
过去几年,类似转向并不罕见。有的项目改用双许可证,有的把核心功能保留开源、把高级功能商业化,有的干脆停止维护。每次社区都会争论:这算不算“背离开源精神”?但如果把问题说得更直白一点,其实是:我们到底想要一个理想中的免费工具,还是一个真的有人持续维护的工具?
我个人的看法是,商业化本身不是问题,关键看边界怎么划。如果基础功能还能稳定使用,数据处理方式透明,收费逻辑清晰,开发者社区依然有迁移和 fork 的自由,那么这是一种可以理解、也值得尊重的转型。反过来,如果商业化只是为了把原有免费功能层层设卡,再配上模糊的隐私策略,那用户的反感也完全合理。
对 JSON Formatter 来说,它的下一阶段成败,未必取决于它能不能做出更多功能,而在于它能不能证明:闭源之后,它依然是站在开发者这一边的工具,而不是一台只想着把调试流程变现的收费机器。
从行业层面看,这件事还有一层象征意义。在 AI 工具大行其道的今天,大家很容易把注意力都投向那些“会思考、会生成、会代理执行”的新产品,反而忽略了开发者日常真正离不开的,往往还是这些看似不起眼的基础工具。可现实是,AI 再聪明,也替代不了一个稳定、快速、可信赖的工作流节点。能把 JSON 看清楚,依然是很多工程问题的起点。
所以,这个项目的归档让我有点惋惜,但不悲观。惋惜的是,开源工具箱里又少了一个持续进化的老朋友;不悲观,是因为它至少还留下了代码、留下了 Classic,也留下了一个清楚的行业信号:开发者工具该认真谈钱了。