为您编写 JavaScript 配置文件,然后您可以将其提交到源代码管理中并分发给项目中的其他开发人员或分发到构建过程中以实时运行。您提到了第三种类型的插件,与源和目标不同,它处理中间这种不可知格式的数据。您认为它会用于什么样的场景?
爱德华多:我们创建了一个负责转换资产的插件。举个例子,假设我正在使用 Contentful,并且您将图像作为博客文章的一部分嵌入。默认情况下,如果您只是从 Contentful 中提取数据,图像将使用来自 Contentful CDN 的实时 URL,如果您想使用的话,这是一个完全可行的选项。但您可能想要将图像与内容一起提供。因此,将它们放在您的存储库中,并通过您用于向站点提供服务的任何服务提供服务。因此,具体而言,该插件将查找正在使用的任何资产,它将拉取这些资产,将它们基本上下载到您的存储库或本地文件系统,然后将其推送。
爱德华多:它将替换文件中引用该远程 URL 的所有 URL,并将其 美国电话号码表 替换为对本地文件的引用。所以基本上,当您推送网站时,您会推送内容和资产,一切都会无缝运行。所以,这是一种不拉动的转换插件的示例。它不特定于数据源,也不特定于静态站点生成器。它只是改变了两者之间的事物。
德鲁:您提到 Jekyll 和 Hugo 有目标插件,您希望在不久的将来看到哪些插件?
爱德华多:嗯,我是 Eleventy 的忠实粉丝。所以我真的希望看到 Eleventy 插件很快就会问世。然后我猜想有些静态站点生成器已经拥有自己的插件生态系统。因此,我很好奇人们是否仍然需要为这些类型的静态站点生成器提供源插件。顺便说一句,您可以使用 Sourcebit 的另一种可能的方式是,如果您使用类似 Next.js 的东西,就像任何基于节点的静态站点生成器一样。您不一定需要目标插件,您可以只需要 Sourcebit 作为 NPM 模块,并且可以运行所有用于获取数据的机制。您只需在内存中运行这些函数即可将内容作为 Next.js 页面的一部分使用。为了回答你的问题,我想对于那些我们不会专门看到目标插件的人,但我们已经可以以这种方式使用 Sourcebit 了。就下一个源插件而言,我希望在不久的将来看到 Eleventy 以及其他一些基于文件的静态站点生成器。
德鲁:我认为这都是非常令人兴奋的事情。是只有您在开发方面进行工作还是有更大的团队?
爱德华多:我一直是该项目的主要开发人员,但这是团队的努力。所以 Stackbit 的一群人认为这是一个问题。我们一直在共同制定规范和解决此问题的正确方法。我只是碰巧是那个按下按键来实现它的人。

德鲁:我认为 Sourcebit 实际上对 Stackbit 客户非常有用,这是 Stackbits 开发和贡献此功能的动机,但显然,它对更广泛的受众不仅仅是 Stackbit 客户有用。
爱德华多:是的,我们内部对 Sourcebit 有宏伟的计划。它将真正帮助我们实现让尽可能多的人可以访问 JAMstack 的使命,但我们希望确保与社区分享这个特定的项目,因为我们认为它将帮助很多人无论他们是否有兴趣使用 Stackbit。这就是为什么它是一个完全开源的项目。
德鲁:那太棒了。关于 Sourcebit 您还有什么想告诉我们的吗?
爱德华多:不,我只是希望人们尝试一下。我确信我们可以共享诸如存储库之类的链接。主存储库中有一个 YouTube 视频,展示了将 Sourcebit 与无头 CMS 和静态站点生成器一起使用时的体验。因此,它可以让您了解使用 CLI 和整个交互式设置过程的感觉,我希望人们能够尝试一下。如果他们认为它可以改进或者它很糟糕,或者它很棒,或者它对他们有帮助,请联系我们。所以是的,我很想听听人们的意见。