ToolJet的开源创业之旅

时间:2023-01-31 19:06:06

开源项目 ToolJet 如何在一年内获得13000颗星和200位贡献者。

ToolJet的开源创业之旅

ToolJet是一个开源的低代码框架,用于快速构建和部署内部工具。我们的代码库是100%的JavaScript和TypeScript。

2021年4月,一个单独的开发者启动了ToolJet项目。公测版于2021年6月推出,且一经推出便大受欢迎。在此牵引下,ToolJet筹集了资金,目前,我们有一个20人的团队。

为什么要开放源代码?

在加入ToolJet之前,我曾作为顾问服务过一些企业客户。这些客户中有许多都是大到足以建立和维护几十个内部工具的企业。尽管销售、支持和运营团队不断要求在他们的内部工具中增加更多的功能和修复错误,但工程团队却很难找到带宽来处理内部工具的工作。

我尝试使用一些平台来建立和维护内部工具。这些工具大多非常昂贵,而且经常不能真正满足需求。我们需要进行修改,而大多数工具不支持内部托管。

作为一个Ruby开发者,我主要使用ActiveAdmin和RailsAdmin来建立内部工具。这两个工具都很棒,但让它们与多个数据源一起工作是很困难的。后来我意识到,市场上需要一个可以构建用户界面,并连接到多个数据源的框架。我相信,任何为开发者建立的工具都应该是开源的。开发人员每天使用的大多数工具和框架都是来自世界各地的人们公开合作的结果。

第一次提交

建立像ToolJet这样的东西需要全身心的投入。卖掉我的一个副业项目给了我5-6个月的时间,并立即开始着手一个我已经想了至少两年的想法。

ToolJet的第一次提交(Rail new)是在2021年4月1日。

我说过代码库100%是JavaScript。请继续阅读,以发现原因。

建设和吸引投资者

在4月和5月的大部分时间里,我都坐在屏幕前写代码,向种子轮的投资者推销前期融资。

我的工作还包括创建拖放式应用程序生成器,记录一切,确保在流行的平台上有设置ToolJet的文档,创建网站,为发布创造海报和博客文章等等。整个过程很顺利,没有遇到任何重大挑战。此时,ToolJet的前端是用React构建,而后端则使用Ruby on Rails。

虽然编码工作进展顺利,但投资者的推销并不顺利。我向风险投资公司和专注于早期融资的“天使投资人”发送了大约40封电子邮件。虽然他们中的大多数人忽略了电子邮件,但有些人回复了他们拒绝的理由,有些人安排了电话。

大多数的电话都是一样的,我无法说服他们相信开源的商业模式。

发布会

6月7日是发布的日子,先于ProductHunt上推出。六个小时过去了,只有70个新注册者。但我们的产品却成为当天的热门(并最终成为本周的第三大产品)。

我还在下午6点左右,在HackerNews上发了帖子,在一个小时内,帖子就成了第一名。我很高兴,许多访问者注册并给资源库加了星。这些访问者和用户中有很多人报告了应用程序和文档中的错误。在HN上发帖的8个小时内,有超过1000名GitHub用户给ToolJet的GitHub仓库加了星,并且有数百人注册了ToolJet云。这一趋势持续了三天,该仓库有2.4万颗星。

ToolJet的开源创业之旅

用于ToolJet的GitHub StarTrack(Navaneeth PK, CC BY-SA 4.0)

获得资金

在GitHub上的牵引力足以让风险投资家(VC)界注意到。发布会后的几天里,电话不断。我们还有其他选择,但没有认真考虑,包括:

引导性融资。在产品的早期阶段,很难找到付费客户,在这之前我没有足够的储蓄来资助这个项目。

作为一个副业项目来建设。虽然这个策略对小型项目很有效,但我觉得它不适用于ToolJet,因为在平台对客户有用之前,我们需要创建几十个集成和UI小工具。作为一个辅助项目,可能需要几个月或几年的时间来实现这个目标。

我知道,如果ToolJet只是一个副业项目,可能需要几个月的时间来建立我想要的平台。我想通过扩大团队来加速增长,考虑到牵引力,风险投资是明显的选择。

好消息是,我们在HN发布后的两周内筹集了155万美元的资金。

开源中的堆栈问题

在ToolJet发布后不久,我们发现很多人想为ToolJet做出贡献,但他们大多是JavaScript开发人员。此间也意识到,对于像ToolJet这样的框架,在未来应该有数百个数据源连接器,只有基于插件的架构才有意义。

我们决定在2021年8月从Ruby迁移到TypeScript。尽管这花了大约一个月的时间和大量的精力,但这是我们为项目做出的最好的决定之一。如今,我们有一个可扩展的基于插件的架构,由我们的插件开发工具包提供支持。我们有超过200名开发者的贡献。我们已经在这里广泛地写了关于这个迁移的文章。

推出V1.0版本

自8月以来,许多用户已经在生产环境中使用ToolJet,而且该平台没有显示出任何稳定性或可扩展性问题。我们一直在等待总结开发者平台的功能,然后才称之为v1.0。ToolJet开发者平台允许任何JavaScript开发者为ToolJet建立和发布插件。开发人员现在可以为ToolJet制作连接器。创建一个ToolJet连接器只需要30分钟,包括集成测试。

建立一个不断增长的社区

ToolJet的开源创业之旅

ToolJet获星历史(Navaneeth PK, CC BY-SA 4.0)

我们没有花钱做营销。在传播ToolJet的消息方面,所做的大部分努力都是写我们的学习成果和活跃在开发者社区。我们有一个由三名成员组成的团队,负责处理社区查询。

商业模式

如果没有一个商业产品来支付账单,ToolJet将不会成为一个可持续的业务。我们已经建立了企业版的ToolJet,客户必须为其付费。免费的社区版没有使用限制,而企业版的附加功能只与大型团队有关。我们现在有非常大的公司作为付费客户,但还没有开始积极地将ToolJet货币化。我们在银行里有足够的资金来建立一个更好的ToolJet,所以我们目前的重点是在产品改进上。

下一步计划是什么?

在开源社区的不断反馈和贡献的帮助下,我们经常发布更好的ToolJet版本。许多重大的改进和几十个连接器和用户界面组件正在进行中。正以前所未有的速度朝着我们的最初目标前进,即成为一个可以连接到数百个数据源和构建最复杂的用户界面的开放框架。