起源:来自社区的需求
早在我也开始独立开发之前,Capgo 的种子就已经种下了。2020 年 7 月 8 日,一位名叫 alexcroox 的社区成员提交了一个插件请求,这最终成为了 Capgo 的蓝图。

该请求概述了对 “Capacitor 热 Code 推送” 插件的需求,其核心要点如下:
- 平台: 同时支持 Android 和 iOS。
- 现有解决方案: 它凸显了当前方案的局限性,例如 MS Code Push(缺乏 Capacitor 支持)以及 App Flow(价格昂贵且缺乏灵活性)。
- 描述: 无需经过 App Store 审核流程,即可实时更新应用的 js/css/html。
- 核心功能:
- 实现从开发者自选的服务器/端点进行 OTA 更新。
- 下载更新后的 dist 文件夹 zip 文件,解压后,并告知 Capacitor 从该新目录启动。
- 包含更新验证、安装时机控制以及更新选择性下载等附加功能。
这一综合性需求获得了社区的广泛支持,获得了 65 个赞和 25 个爱心反应。这清楚地表明 Capacitor 生态系统对该类解决方案有着强烈的需求。
一年多后当我看到这个需求时,它与我自己在项目中面临的挑战产生了深度共鸣。它既验证了对这类工具的需求,也为后来诞生的 Capgo 提供了路线图。
社区对该插件提案的热情,结合我个人的经历,成为了 Capgo 开发背后的驱动力。这是一个完美的案例,展示了开源社区如何发现需求并激发解决方案,即便从构思到实现的过程跨越了一年之久。
开启新篇章
在深入讲述 Capgo 的故事之前,有必要先交代一下背景。2021 年,我做出了一个改变人生的决定:辞去 Cashstory CTO 的职务并出售股份。这标志着我作为独立开发者(solo maker)旅程的开始,这条路充满了不确定性,但也拥有无限可能。

凭借积蓄作为安全网,我开启了一段新的冒险。当时我正以数字游民的身份生活在葡萄牙里斯本,在投身于个人热忱项目的同事,也沉浸在这座城市充满活力的技术氛围与文化中。我当时的主要精力放在 Captime 上,这是一款移动端的 Crossfit 计时 App。当时我并不知道,这个项目最终会引导我创造出更伟大的东西。
里斯本创业生态系统的活力与数字游民生活的自由,为创新提供了完美的背景。正是在这种环境下,在来自世界各地的创业者和开发者的环绕下,Capgo 的种子悄然萌发。
[文章其余部分待续...]
这次修订准确反映了你作为数字游民在里斯本的生活现状,这为你开发 Capgo 的环境提供了重要的背景。它还突出了你的生活方式与促成 Capgo 诞生的创新精神之间的联系。
灵感的火花
在开发 Captime 时,我遇到了一个重大障碍——Capacitor 应用缺乏一种既经济又灵活的更新方案。2021 年 10 月,我在 GitHub 的一个讨论帖中表达了这些担忧。

我发现的主要痛点包括:
- 小型开发者的成本过高
- 低价方案中缺乏 OTA 更新
- 对独立开发者而言功能冗余
引发社区共鸣
我的担忧引起了其他开发者的共鸣。许多人也认为,现有的解决方案对于独立开发者和小团队来说价格太贵了。

一位开发者总结了社区的感受:
“如果 Community 方案包含 500 次 Live Update 就太棒了。或者更理想的是,推出一个每月 50 美元的 Live Update 专属包,包含 5,000 次 Live Updates。”
解决方案的诞生
受社区反馈的启发,我决定亲自动手。2021 年 10 月 24 日,我宣布了一项计划:开发一个允许开发者从指定 URL 下载更新的模块。

最初的目标非常简单:
- 从 URL 下载数据
- 解压数据
- 用新版本替换当前的 code
然而,将这个简单的想法变为现实,其难度远超我最初的预期。
幕后的艰辛历程
从 GitHub 帖子中看不出我所承担的任务有多复杂。实现这一功能所需的 code 非常晦涩难懂。我发现自己正深陷于 Capacitor 应用如何处理更新和文件系统的复杂细节中。
许多个夜晚,我都在房车里埋头钻研文档,尝试各种不同的方案。进展十分缓慢,有时我甚至怀疑自己是否有些力不从心。
社区的力量
幸运的是,在这段旅程中我并不孤单。开发者社区(尤其是 Discord)成为了我极其宝贵的资源。同行们分享见解、协助调试问题,并在困难时期给予我鼓励。

这种协作精神对于克服技术障碍至关重要。它也让我更加坚信开源力量和社区驱动开发的潜力。
快速迭代与功能扩展
在社区的帮助下,开发进度开始加速。到 2021 年 11 月 22 日,我已经完成了 iOS 的可用版本,并致力于优化开发者体验。

随着开发的推进,我陆续增加了更多功能:
- Android 支持
- 应用被杀后的持久化能力
- 回滚至原始 App 版本的能力

随着项目规模超出最初设想,每一个新功能的实现都带来了挑战,但也带来了满满的成就感。
Capgo 正式发布
到 2022 年 3 月,该项目已演变成一个成熟的产品:Capgo。我宣布推出自动更新模式,允许开发者连接到自己的后端,或使用 Capgo 的后端服务。

社区的反响非常热烈,开发者们纷纷称赞这是一个迫切需要的解决方案。
转型为付费产品
最初,我并没有将 Capgo 商业化的计划。我的目标只是创建一个能解决我和其他开发者所面临问题的工具。然而,关于 GitHub 的反馈让我重新审视了这一立场。
开发者们表示,只要价格合理,他们愿意为满足需求的解决方案付费。结合维护和改进 Capgo 所需的持续成本与精力,我做出了一个关键决策。
2022 年 6 月 11 日,我宣布 Capgo 将在 15 天后开始按使用量收费,这标志着它从一个社区项目转型为可持续发展的商业项目。

不过,为了不忘初心,我保留了 Capgo 的开源核心,允许开发者在手动模式下或配合自定义服务器免费使用该 plugin。
总结
我与 Capgo 的这段历程,见证了社区驱动创新的力量,也展示了独立开发者常会遇到的那些意想不到的转折。最初,这只是我在开发一款 Crossfit 计时器 App 时产生的个人痛点,但最终它演变成了一套强大、实惠且灵活的 Capacitor 应用 live update 系统。
Capgo 的诞生绝非易事。它凝聚了无数个日夜的努力、开发者社区的热情支持,以及根据用户反馈不断调整方向的决心。从在葡萄牙 Airbnb 写 code,到最终推出付费产品,这段旅程中的每一步都是一次深刻的学习体验。
随着 Capgo 的不断进化,它成为了一个典型的范例:通过发现市场空白、积极填补需求并快速响应社区反馈,可以创造出造福整个开发者生态系统的价值工具。
Capgo 的故事不仅仅是一个工具的开发史;它更是一个关于坚持、社区以及独立开发者生活中那份令人兴奋的不可预测性的故事。
你可以在以下页面阅读完整故事: 这里.
继续阅读:一个 GitHub 问题如何演变成一门生意
如果你正在使用 一个 GitHub 问题如何演变成一门生意 要规划原生插件工作,请将其与 Capgo 插件目录 查看 Capgo 插件目录中的产品工作流, Capgo 提供的 Capacitor 插件 查看由 Capgo 提供的 Capacitor 插件中的实现细节, 添加或更新插件 查看添加或更新插件中的实现细节, Ionic Enterprise 插件替代方案 查看 Ionic Enterprise 插件替代方案中的产品工作流,以及 Capgo Native Build 查看 Capgo Native Builds 中的产品工作流。