本文最初发布于 DEV CLASS。
据 GitHub Next 高级研究主管 Idan Gazit 称,GitHub Blocks 很快将面向所有用户开放试验,但尚不确定它是否会成为一款正式产品。
在该项目的公共论坛 GitHub Next Discord 上,Gazit 说:“我们可能很快就不需要等待列表了。我暂时还无法给出一个具体的时间轴,但是……是以周为单位而不是以月为单位。”也就是说,目前还没有支持 GitHub Enterprise(GitHub 的本地部署)的计划。Gazit 还表示:“我们不能提供任何时间表,也不能保证 Blocks 会变成一款产品。这个试验的目标是证明这种方法的价值,以便 GitHub 的产品工程团队可以确定是否将其变成 github.com 的一部分,或用于其他体验,如 VS Code,以及一般的 Web 嵌入。”
参与试验的用户可以在本地开发 Block。Block 是 React 组件(也提供了用于 Svelte 和 Vue 的模板),可用于与 GitHub 存储库中的内容交互。不过,要查看它们的话,只能通过一个特殊的 GitHub 网站。该网站嵌入了开发服务器。
将 JavaScript 输出渲染为图形的 Block
Block 的概念很简单。它是一组从存储库(文件或文件夹)中获取输入的 JavaScript 文件,并提供了连接到 GitHub API 的钩子,支持诸如回写新提交之类的操作。JavaScript 的功能取决于开发人员,例如将 SVG 文件渲染为图像,丰富的 CSS 文件(包含实际的颜色和样式)呈现方式,在智能表格中显示来自 JSON 或 CSV 文件的数据,可编辑图表等等。Block 还可以可视化存储库活动。有一位开发人员正在为他们设计中的编程语言开发语法高亮显示功能。Blocks 能以可视化的方式呈现代码,非常有助于向潜在用户呈现正在构建的应用程序的方方面面。
Blocks 也可能存在于 GitHub 之外。许多在 GitHub 上有用的功能在本地编辑器中也很有用。
为了让 Blocks 成为一个完整的产品,就需要在 GitHub 生产站点中构建运行它们的能力,这意味着很大的工作量。GitHub 是一个安全关键型的应用,托管着数百万商业应用程序的代码,所以那是另一个需要考虑的因素。扩展 Blocks 的能力,比如访问安全存储的秘密,有助于发挥它们的功能,但也可能使它们更容易被误用。目前,为了支持不受信任的代码,Blocks 在沙箱 iFrame 中运行。
不过,这个试验确实提出了一个问题,即代码存储库应该在多大程度上既运行代码又管理代码。模糊功能界限有很大的潜力,但保持清晰的边界也同样很有价值。
原文链接:
https://devclass.com/2023/02/27/github-blocks-preview-opening-for-all-users-soon-but-remains-experimental/
声明:本文为 InfoQ 翻译,未经许可禁止转载
苹果Vision Pro商标撞车华为;Vue作者入驻爱发电赞助平台,称国内赞助非常少;14岁天才少年入职SpaceX|Q资讯
深度:为什么中国数据库领域没有出现像Snowflake这样的巨头?
十七年来奇葩大崩溃!为不让OpenAI和谷歌白拿数据,Reddit 收取巨额API 费用还诽谤开发者,社区爆发大规模抗议
文章引用微信公众号"InfoQ",如有侵权,请联系管理员删除!