最近在开发者社区中,有一个开源项目引发了广泛关注。开发者将 VS Code 的完整架构整体迁移,并做了一项关键改动:移除 Electron,改用 Tauri + Rust 构建底层运行时。
传统的 VS Code 安装完成后体积高达 797 MB,启动后立即占用 1 GB 内存。
仅仅编写几行代码,设备风扇便开始高速运转。
如果再开启一个窗口,电脑性能可能直接告急。
GitHub 上有人做了一件大胆的事
没错,还是那个备受瞩目的项目——开发者将 VS Code 的整套架构移植到了 Tauri + Rust 之上,实际效果令人惊叹:

结果:安装包从 797 MB 锐减至 16 MB,体积压缩了 96%。
堪称 VS Code 完整架构的一次极致复刻。
这个项目名为:SideX。
SideX 究竟是什么?
简单来说,它利用 Tauri + Rust 重新实现了 VS Code 的桌面运行时环境:

核心亮点不在界面,而在底层架构的彻底重构。
它的设计思路非常纯粹:
- 前端:保留 VS Code Workbench(TypeScript)
- 后端:使用 Rust 重写原本由 Electron 提供的底层能力
- 容器:以 Tauri 替代 Electron,直接调用操作系统原生 WebView
为什么能做到如此轻量?
VS Code 的内存占用几乎全部源于内置的 Chromium 内核。
Tauri 将其替换为系统自带的 WebView:macOS 使用 WKWebView(与 Safari 共享内核),Windows 使用 WebView2。
无需重复造轮子,近乎零额外资源开销。
目标:在 macOS 上,空闲状态下将内存占用控制在 200 MB 以内。
整体架构
VS Code Workbench(TypeScript)
↓
Tauri Bridge
↓
Rust核心替换点(最为关键)
并非“小修小补”,而是整层替换:将 Electron 底层全部切换为 Tauri + Rust,前端保持不变。
核心功能现状
目前已经可以稳定运行的功能:
- 编辑器:Monaco(语法高亮、基础 IntelliSense)
- 文件管理:打开、创建、删除、重命名、文件监听
- 终端:完整 PTY 支持,shell 自动检测、resize、信号处理
- Git:status、diff、log、stage、commit、branch、push/pull/fetch、stash、reset
- 搜索:全文搜索、Rust 后端索引、正则匹配
- 主题:多套 VS Code 内置主题
- 扩展:从 Open VSX 安装插件
- 存储:SQLite(rusqlite)、自动保存、undo/redo
仍在积极开发中的功能:
- 扩展宿主(Extension Host)
- 调试器(Debugger)
Rust 在其中究竟扮演了什么角色?
很多人误以为 Tauri 只是一个外壳,事实并非如此。在 SideX 中,Rust 才是真正的核心引擎:
(1) 文件系统std::fs 负责文件读写,notify crate 实现文件监听(macOS 基于 FSEvents)。
(2) 终端(PTY)portable-pty 提供真实的 shell 支持,具备交互式终端、自动检测 shell、窗口 resize 等能力。
(3) Git(核心亮点)
直接构建了完整的 Git 命令层,覆盖日常开发中 90% 以上的常用操作。
(4) 搜索系统
结合 dashmap + rayon + regex 实现并行搜索,由 Rust 后端建立索引,速度非常出色。
(5) 本地存储
基于 SQLite(rusqlite)。
本质上,就是将原本的 Node.js 后端全部替换为 Rust。
本地部署(详细步骤)
(1) 环境准备
需要安装:Rust、Node.js、Tauri 相关依赖。
不同平台要求:Windows 需安装 Visual Studio Build Tools,macOS 需安装 Xcode CLI,Linux 需安装 webkit2gtk / ssl 等。
(2) 拉取代码
git clone https://github.com/Sidenai/sidex.git
cd sidex
npm install(3) 开发模式启动
npm run tauri devLinux 若出现白屏:WEBKIT_DISABLE_DMABUF_RENDERER=1 npm run tauri dev
(4) 构建(注意内存需求)
# macOS / Linux
NODE_OPTIONS="--max-old-space-size=12288" npm run build
# Windows (PowerShell)
$env:NODE_OPTIONS="--max-old-space-size=12288"
npm run build
npx tauri build- 首次构建大约需要 5-10 分钟(Rust 编译)
- 前端编译对内存要求较高(建议 12GB 以上)
- 目前暂无预编译二进制包,需从源码构建
性能对比:SideX 与传统 Electron 方案
最直观的差距:安装包缩小 96%,启动速度更快,多个应用共享系统 WebView 内核,Rust 后端性能更加可控。
堪称学习 Rust + Tauri 的最佳实践范例
如果你正在学习 Rust、Tauri 或桌面应用开发,这个项目几乎可以说是“教科书级别”的参考:
(1) 技术栈非常纯粹
- 前端:TypeScript、Vite 6、Monaco Editor
- 终端 UI:xterm.js + WebGL 渲染
- 语法高亮:vscode-textmate、vscode-oniguruma(WASM)
- 后端:Rust、Tauri 2
- 终端:portable-pty(Rust)
- 文件监听:notify crate
- 搜索:dashmap + rayon + regex(并行 Rust)
- 存储:SQLite via rusqlite
- 扩展:Open VSX registry
(2) 能够学到真正的工程实践能力
你可以清晰看到:Rust 如何对接文件系统,如何实现终端模拟,如何设计 IPC 通信,如何搭建命令层,以及如何与前端高效交互。
项目结构与 VS Code 源码高度相似,如果你曾阅读过 VS Code 源码,会感到非常亲切。
最后总结
16 MB 的体积确实很吸引人,但它的真正价值远不止“轻量”二字。
更重要的是,它证明了:Rust + Tauri 的组合,完全有能力承载复杂的桌面级应用。
目前仍处于早期版本,核心编辑器和终端已经稳定可用,扩展宿主和调试器功能正在开发中。
作者将其开源,正是希望吸引更多开发者共同参与——如果你想贡献代码,现在就可以加入。
如果你想深入学习 Rust + Tauri —— SideX 绝对值得你认真拆解一遍。
