一切都从收到一封电子邮件开始一大早,我收到一封电子邮件,StackBlitz说它正在与Next.js和Google的团队一起研究一项新技术几年了几天前,StackBlitz意识到网络正走向一个关键的拐点。WebAssembly和新功能API的出现使得编写一个强大到足以在浏览器中完全运行Node.js的基于WebAssembly的操作系统成为可能。我们设想了一个比原生环境更快、更安全和一致的高级开发环境,以实现无缝代码协作,而无需设置本地环境该技术称为:WebContainersWebContainers允许您创建可托管的完整Node.js环境on毫秒级启动,一键即时上线和链接分享。该环境具有VSCode强大的编辑体验、完整的终端、npm等。它还完全在您的浏览器中运行,这带来了一些关键优势:比本地环境更快。与yarn/npm相比,构建速度最多可提高20%,滚动安装速度可提高5倍以上。在浏览器中调试Node.js。与ChromeDevTools无缝集成,支持原生后端调试,无需安装或扩展。默认是安全的。所有代码执行都发生在浏览器的安全沙箱中,而不是在远程VM或本地二进制文件中。同样,这些环境不在远程服务器上运行。相反,每个环境都完全包含在您的网络浏览器中。没错:Node.js运行时本身首次在浏览器中本地运行。截至目前,WebContainers现在处于公开测试阶段。当前支持包括Next.js、GraphQL和VanillaNode.js,我们正在与其他开源项目合作以扩大支持WhyWebContainersSecurityStackBlitz通过利用浏览器数十年的速度和安全创新来解决这些问题。StackBlitz中的所有计算都会立即在浏览器安全沙箱中进行,并且不会突发到您的本地计算机。该模型还解锁了一些关键的开发和调试优势(稍后会详细介绍)。释放浏览器的力量使用ChromeDevTools无缝调试Node.js事实证明,浏览器真的非常擅长调试Javascript。令人震惊,我知道;)通过在浏览器中执行Node.js,与ChromeDevTools的集成开箱即用。无需安装,无需扩展,只需在浏览器中进行本机后端调试即可运行服务器,实际上是在您的浏览器中。WebContainers包含映射到浏览器的ServiceWorkerAPI的虚拟TCP网络堆栈,允许您即时创建实时Node.js服务器,即使在离线时也能继续工作。因为它完全在浏览器安全沙箱中运行,所以服务器响应的延迟比localhost(!)!WebContainer的内置npm客户端速度非常快,它会在每次加载页面时运行全新安装,确保您每次都能获得干净的环境。如果您的环境确实出现问题,您可以像任何其他Web应用程序一样将其恢复到干净状态:单击刷新按钮使用StackBlitz,无论您是在火车上、飞机上,还是只是坐在后座上下雨,两者都可以在没有互联网连接的情况下继续工作使用StackBlitz新颖的计算模型,100%的代码执行发生在浏览器安全沙箱中。与原生相比,这导致更快、限制更少的开发环境,同时提供更高的安全性,这是一种非常罕见的组合。事实上,默认的安全态势非常稳固,我们的嵌入式包管理器是第一个公开可用的工具,用于解决SamSaccone长期未解决的npm漏洞,该漏洞已超过五年未解决。同样,这些环境不在远程服务器上运行。相反,每个环境都完全包含在您的网络浏览器中。没错:Node.js运行时本身第一次在浏览器中原生运行,最后WebAssembly强大到可以写操作系统,但是这次WebContainers把这个技术的方向放在了Node.js上,我觉得它是划时代的。在我看来,这项技术未来的主要应用方向是让全世界的软件都可以在以前不能运行的地方运行。以后你可能只需要在电脑上安装一个谷歌浏览器就可以了。
