一旦我们建立了使用 uischema-builder 生成 uiSchemas 的流程并将这些指令传递给 JSF 以在我们的屏幕上呈现,就该弄清楚我们想要在现有代码库中的位置构建新的块编辑器了。
我的团队有一个巨大的机会来创建一个全新的开发环境,让我们可以自由地引入我们想要使用的工具,以确保我们不会减慢我们的整体开发时间。
Squarespace 目前的产品开发环境是在一个主要的 多米尼加共和国 whatsapp 电话号码列表 单体仓库中工作。在考虑构建新的块编辑器时,我们考虑将新代码放在单体仓库中。最终,我们决定不这样做,而是选择创建自己的仓库,因为:
我们不会受到更大、更耗时的构建和部署管道的影响
我们可以完全控制我们想要运行的精确测试和检查,而不会受到其他代码更改的影响。
除了整体式架构之外,我们还可以频繁发布更新,从而加快开发速度
我们将能够构建和发布单独的代码库,将其作为名为 的 npm 包@sqs/block-editor-schemas,然后由主整体代码库使用。将其作为单独的构建和发布步骤(在整体之外)可以更轻松地推出和回滚功能。
这也意味着我们可以更好地与设计和 QA 合作来解决新功能或已知错误。
我们将受到激励,优先考虑高质量的提交信息、PR 和指导文档
单独的 repo 可以更轻松地跟踪整个项目所做的一般更改,同时创建更有针对性和更有用的文档。
这些原因使核心布局团队处于有利地位,可以对当前在实时平台上呈现的块编辑器引入增量更改。
在产品经理和产品设计师的帮助下,我们创建了一个区块编辑器发布路线图,根据优先级对区块编辑器进行分组,以便所有团队成员都知道将按什么顺序发布哪些编辑器。优先级基于使用频率,例如,我们的按钮和图片区块会在较少使用的日历或图库区块之前更新。