关于 MergeJPG

由 Alexander Duan 创建 - 一个认为简单工具不应该要求你上传文件给陌生人的开发者

这是如何开始的

2024 年 9 月,我在做一个副业项目 - 帮助一个朋友建立她的 Etsy 商店。她需要合并产品照片来展示颜色变化,我告诉她用那些在线工具。她回来时很困惑:为什么它需要上传我的照片?为什么有水印?我没有好的答案。

那天晚上,我开始好奇浏览器是否能在本地处理图片。结果发现,Canvas API 已经存在很多年了,而且功能很强大。我花了那个周末构建 MergeJPG 的第一个版本 - 主要是通过搞砸东西和读 Stack Overflow 来学习。第一个版本有 bug(图片有时会上下颠倒合并,很尴尬),但它能用。

我在 2024 年 10 月在 Product Hunt 上低调发布了它。第一周很安静 - 大概 30 个人试了一下。然后有人在一个关于隐私工具的 Reddit 帖子上分享了它,流量激增。人们似乎真的很在意不上传他们的文件。截至 2024 年 12 月,该网站已经处理了超过 50,000 次图片合并,全部都在用户的浏览器中完成。

我为什么创建这个

我越看现有的图片工具,就越注意到这些问题:

  • 大多数工具会上传你的文件到他们的服务器。做表情包还好。但是客户工作或个人照片?感觉不对。
  • 免费的添加水印或有很小的文件限制。付费的要每月 9.99 美元,就为了一个应该简单的功能。
  • 像 Photoshop 这样的工具对于只是合并两张图片来说太过头了。我喜欢 Photoshop,但为了 30 秒的任务打开它不值得。
  • 用户界面很混乱。太多选项,太多步骤。我只想拖、放、合并、下载。就这样。

我如何以不同方式构建它

我做了一些特定的技术决策来解决这些问题:

使用 Canvas API 的客户端处理

所有事情都在你的浏览器中使用 JavaScript 的 Canvas API 和 FileReader 完成。你的图片在内存中处理,永远不会发送到任何地方。即使我想看也看不到 - 它们实际上根本不碰我的服务器。

(暂时)没有商业模式

现在这是免费的,因为托管成本很低(它只是一个静态网站)。没有免费增值层级,没有高级功能。如果成本增长,我会想办法,但我不会为基本功能添加付费墙。

故意保持简单

三种布局选项:垂直、水平、网格。就这些。我可以添加 50 个功能,但那样它就会变成我试图避免的复杂工具。保持简单很难,但值得。

坦诚局限性

浏览器处理有限制 - 如果你尝试合并 100 张巨大的图片,你的浏览器可能会吃力。我对此很坦率。像 GIMP 这样的桌面工具更适合重量级批处理工作。这个工具是用于快速、简单的合并。

谁在做这个

主要就是我,Alexander Duan。我是一名全栈开发者,之前构建过几个 SaaS 产品。我在业余时间做这个,通常是在深夜我本应该睡觉的时候。我的日常工作是构建 Web 应用程序,所以这满足了同样的痒点,但范围更简单、更专注。

当我把 UI 搞砸时(这发生的频率比我愿意承认的要多),偶尔会得到设计师朋友的帮助。但代码、服务器管理和决策都是我自己做的。这意味着它比风投支持的初创公司移动得慢,但也意味着我可以保持它简单和免费,而不用担心投资者回报。

我试图做什么

我的目标很直接:

  • 证明简单的图片工具不需要复杂或侵犯隐私。客户端处理是可行的。
  • 保持免费和可访问。我讨厌基本工具被锁在订阅后面。这不会是那样的。
  • 构建一个真正解决一个问题的东西,而不是试图成为所有人的一切。

接下来是什么

我正在开发 PDF 导出和更好的网格自定义。但说实话,我在努力抵制功能蔓延。每次我想这个工具需要 X,我都会提醒自己为什么一开始要构建它 - 为了简单。所以我添加功能很慢,这让一些用户沮丧,但保持了工具的专注。如果你需要高级功能,Photoshop 或 GIMP 这样的工具是有原因存在的。

联系我

我会读每一封发来的邮件。无论你发现了一个 bug、有功能请求,还是只是想告诉我这个工具节省了你的时间,我都很乐意听到。我通常在一两天内回复(如果我在拖延其他工作,有时会更快)。