帧间札记FRAME NOTES
← 全部札记

JOURNAL / 开发记录

SnapGrid:从一个工作痛点,到一个真正可用的工具

一个照片排版需求,怎样延伸出画布、模板和导出的问题。比起一次完成,更想记录逐个解决问题的过程。

SnapGrid 的起点不是一个很大的产品计划,而是真实工作里的照片排版问题。照片需要被放进合适的位置,经过调整,再成为可以使用的排版结果。重复处理这些事情时,工具能否更直观,是一个值得认真对待的问题。

我想尝试的,是把一部分重复工作变成可以拖动、调整和导出的操作。从这个想法出发,SnapGrid 逐渐成为一个宫格照片排版网页工具。

看起来简单的需求,做起来有很多环节

一张排版图只是最终看到的结果。在它之前,还有照片如何进入画布、怎样调整位置、模板如何参与布局;在它之后,还要考虑怎样导出,以及导出的结果是否符合预期。

这些问题不能只靠一个“页面已经显示出来了”来回答。交互顺不顺手、模板有没有问题、导出是否正确,都需要分别检查,也需要放回完整流程里再看一遍。

工具开发让我更清楚地感受到:一个需求被描述得很短,并不意味着实现它的过程也很短。有时最需要耐心的,恰恰是那些看起来理所当然的小环节。

让问题变得具体一点

SnapGrid 使用 Vue 3、TypeScript、Vite 和 Konva。对我来说,记住这些名字不如弄清楚一个具体问题重要:预期是什么,实际出现了什么,它在什么条件下发生,又怎样确认这次修改确实解决了它。

我不是计算机专业出身,AI 辅助编程帮助我把想法逐步落成代码。但工具给出一个实现方向之后,仍然需要检查和验证。能运行一次和能够在真实流程里使用,中间还有许多需要认真处理的细节。

让我记住的,不只是工具终于运行起来的时刻,也是一个问题被拆开、找到原因、调整之后再确认的过程。一个接一个的小结果,慢慢组成了现在的 SnapGrid。

可用,是继续验证的起点

目前,SnapGrid 处于小范围测试阶段。它已经从想法走到可使用的工具,但还不能因此把所有场景都写成已经验证完成,也不能把测试中的状态写成全面正式开放。

这个主站会记录项目和开发过程,不公开门店专用的受保护入口,也不会为了讲一个更完整的故事而展示客户素材或内部资料。工具的真实边界,同样是项目介绍的一部分。

回头看,这个过程让我重新理解了“做成一件事”:它不只是在屏幕上出现一个结果,而是愿意继续面对结果背后的问题。接下来的进展,也会以实际完成和验证的部分为准,慢慢留下记录。

全部札记 ↗