不强制捆绑 Chromium:Vercel Native SDK 用 Web 技术构建原生桌面应用
过去十年,用 Web 技术开发跨平台桌面应用,Electron 几乎是唯一选择。VS Code、Discord、Notion 等应用都基于它构建,但痛点同样明显:安装包臃肿、内存占用高、启动缓慢,且每个应用都需捆绑一整套 Chromium 内核,让开发者对它又爱又恨。
Vercel Labs 推出的 Native SDK 正试图打破这一局面,为 Web 开发者开辟一条构建桌面应用的新路径。
并非替代品,而是一条新工具链
专注 Next.js 和 AI SDK 的 Vercel 为何涉足桌面领域?答案很直接:它希望把 Web 开发者熟悉的开发体验,无缝对接到原生桌面端。
官方对 Native SDK 的定位很明确:一套用于构建原生桌面应用的完整工具链,既不是 Electron 的替代品,也不是一个新的运行时。核心目标是帮助开发者利用熟悉的 Web 技术,打造真正的原生桌面应用,而非套着浏览器外壳的“Web 应用”。
核心亮点:告别强制捆绑 Chromium
Native SDK 打破了 Electron 的局限,将选择权交还给开发者。它提供两种渲染模式,可根据项目需求灵活切换:
- 开发轻量级小工具:优先选用系统原生 WebView,显著缩小应用包体积、加快启动速度并降低内存占用。
- 应对复杂渲染需求:切换至 Chromium 嵌入式框架(CEF),保障功能完整性和交互流畅性。
相比之下,Electron 只能默认捆绑整套 Chromium 内核,灵活性不及 Native SDK。Native SDK 旨在实现“小体积、低内存、快速迭代”,在贴近现代原生开发体验的同时,保留 Web 开发的便捷性。
和 Electron 的差异在哪里
两者的核心差异主要体现在几个方面:
- 渲染引擎:Electron 仅支持 Chromium;Native SDK 允许在系统 WebView 和 Chromium 之间灵活切换。
- 资源占用:Electron 因捆绑完整 Chromium,导致包体大、内存占用高;Native SDK 更为轻量化,能根据所选渲染模式优化资源占用。
- 开发体验:Electron 生态成熟但模式相对传统;Native SDK 的流程更现代化,且兼容前端开发者熟悉的技术栈,上手门槛低。
使用 Native SDK 时,开发者无需学习新的编程语言,沿用 HTML、CSS、JavaScript 或 TypeScript 即可构建真正的桌面应用,而非浏览器页面。
Vercel 为何跨界做桌面
从 Vercel 近年来的产品布局——从 Next.js 到 AI SDK,再到 v0 和如今的 Native SDK——可以看到其核心逻辑:始终致力于让开发者以最少的配置完成更多工作,降低门槛,提升效率。
与此同时,行业趋势也在推动这一变化:
- AI 产品纷纷布局桌面端:ChatGPT、Claude、Cursor 等热门 AI 应用都推出了桌面客户端以提升用户体验。
- 开发工具向客户端回归:相比网页,桌面应用拥有更高的系统权限和更深的系统集成度,能提供更完整的体验,这正推动工具向客户端转型。
Native SDK 顺应了这一趋势,为开发者构建桌面应用提供了一个更灵活的选择。
它会取代 Electron 吗
短期内,Native SDK 不会取代 Electron。
Electron 拥有十多年的生态积累,VS Code、Discord 等头部应用均基于它,短期内难以被替代。但 Native SDK 在特定场景下具有明确价值:
- 适用场景:无需完整 Chromium 支持、对启动速度、包体积和资源占用有高要求的应用。
- 核心价值:打破了“Web 开发桌面应用必然捆绑 Chromium”的传统模式,提供了一种全新的开发思路。
快速上手指南
想要快速体验 Native SDK,只需几步:
- 安装 CLI:
npm install -g @native-sdk/cli - 创建并进入项目:
native init my_app && cd my_app - 启动开发服务:
native dev
官网:https://native-sdk.dev/introduction