2026 年,用 Rust 写点什么好?
"Rust 能写什么?"这个问题问反了。Rust 现在几乎什么都能写,关键是你想解决什么问题。
不聊语法,不聊所有权,就聊聊哪些项目用 Rust 写是真的爽。
重写命令行工具——最容易出成果的方向
Rust 社区有个著名的梗:"用 Rust 重写一切"。听起来像玩笑,但这个方向确实已经被验证了无数次。
| 工具 | 替代谁 | GitHub Stars | 一句话评价 |
|---|---|---|---|
| ripgrep | grep | 63k+ | 搜代码快到你以为开了挂 |
| bat | cat | 58k+ | 语法高亮 + Git diff,回不去了 |
| fd | find | 42k+ | 用惯了 fd,再用 find 像在受刑 |
| eza | ls | 21k+ | 颜色、图标、tree 模式,ls 的终极形态 |
| zoxide | cd | 36k+ | 记住你去过哪,跳转像有读心术 |
| starship | prompt | 57k+ | 跨 shell 的终端提示符,颜值担当 |
| delta | diff | 30k+ | side-by-side diff,语法高亮,Git 输出从此不同 |
| hyperfine | time | 28k+ | 命令行基准测试,自动多次运行取统计值 |
| dust | du | 11k+ | 磁盘占用一目了然,比 du 好看一百倍 |
| sd | sed | 7k+ | 用正则替换文件内容,语法比 sed 人道多了 |
为什么 CLI 工具特别适合 Rust?
三个字:快、小、稳。
快——Rust 编译出来的二进制直接跑,没有 VM 启动时间,没有 GC 暂停。ripgrep 搜文件比 grep 快 10 倍不是因为它算法多牛,纯粹是语言层面的差距。
小——单个二进制文件,没有依赖,scp 到服务器上就能用。你试过把一个 Node.js CLI 工具部署到服务器上吗?node_modules 的痛,懂的都懂。
稳——编译器帮你挡住了大部分内存问题。CLI 工具跑一次就退出,看起来不那么需要内存安全?但当你处理 GB 级日志文件的时候,一个内存泄漏就能让你的工具变成定时炸弹。
如果你想练手:
最好的项目就是把你日常用的某个脚本用 Rust 重写一遍。Python 写的批量重命名工具?Shell 写的日志分析脚本?用 Rust 重写。性能提升通常在 10-100 倍,而且你会在这个过程中把 Rust 的文件 I/O、命令行参数解析(clap)、正则表达式(regex crate)都过一遍。
Warp:当终端变成 AI 开发环境
2026 年有一件大事:Warp 开源了,49k+ Stars。
Warp 不是传统意义上的"终端模拟器"。它用 Rust 从头写了一个 GPU 加速的渲染引擎(基于 Alacritty),然后在上面搭了一整套 AI 工作流:内置的编码 Agent、命令自动补全、智能错误修复。你可以直接在终端里跟 AI 对话,让它帮你写命令、排查问题、甚至直接修改代码。
为什么 Warp 值得关注?
因为它代表了终端的下一个形态。传统终端(iTerm2、Alacritty、Kitty)本质上是"文本渲染器"——你输入命令,它输出结果。Warp 把终端变成了一个交互式的开发环境,命令输出是结构化的、可搜索的、可复用的。
Rust 在这里发挥了什么作用?
Warp 需要极高的渲染性能(GPU 加速、60fps 滚动)、极低的输入延迟(每次按键都要即时响应)、跨平台一致性(macOS、Linux、Windows)。这三个需求恰好是 Rust 的甜区。Warp 依赖了 Tokio(异步运行时)、Hyper(HTTP)、FontKit(字体渲染)等一系列 Rust 生态的顶级 crate。
对 Rust 开发者的启示:
Warp 证明了一件事——用 Rust 写大型 GUI 应用是可行的。以前大家觉得 Rust 只适合写 CLI 和后端,Warp 用实际行动打了这个脸。如果你对 GPU 渲染、跨平台 GUI、AI 集成感兴趣,Warp 的代码库是一个绝佳的学习资源。
终端 TUI 应用——写给自己用的小工具
TUI(Terminal User Interface)应用是那种"写完之后每天都在用"的东西。
几个做得很好的例子:
- bottom (btm) — 系统监控工具,htop 的 Rust 版,13k+ Stars
- gitui — 终端里的 Git 客户端,21k+ Stars,比
tig好用太多 - pastel — 颜色工具,终端里选颜色、转换格式
- tokei — 代码行数统计,支持几百种语言
为什么 TUI 好玩?
因为它是一个你能真正用起来的项目。TUI 工具是你每天打开终端都会敲的东西。而且 TUI 的反馈循环很短——改一行代码,cargo run,立刻看到效果。
Rust 的 TUI 生态现在很成熟:ratatui(20k+ Stars,前身是 tui-rs)提供组件,crossterm 处理跨平台终端事件。写起来比想象的简单。
有意思的点子: 写一个 Git 提交信息查看器——按时间线展示、支持搜索、高亮显示变更文件。这种工具市面上没有特别好用的,而且你能在这个过程中学到 Git 内部原理。
WebAssembly——Rust 的新战场
WASM 是 Rust 最被低估的方向。
Rust 是目前编译到 WASM 体验最好的语言之一。没有 GC(WASM 里没有 GC 运行时),编译出来体积小,性能接近原生。
实际的应用场景:
1. 浏览器端的计算密集型任务
图片处理、音视频转码、加密解密——这些任务以前只能在后端做,现在可以用 Rust 编译成 WASM 直接在浏览器里跑。
2. 插件系统
很多工具现在用 WASM 做插件:编辑器(Zed)、数据库(SQLite 的 WASM 版)、甚至操作系统组件。用 Rust 写一个 WASM 插件,宿主程序加载执行,既安全(沙箱隔离)又高性能。
3. 边缘计算
Cloudflare Workers、Fastly Compute 这些边缘计算平台都支持 WASM。用 Rust 写一个边缘函数,处理 HTTP 请求,延迟比传统后端低一个数量级。
入门代码:
use wasm_bindgen::prelude::*;
#[wasm_bindgen]
pub fn fibonacci(n: u32) -> u32 {
match n {
0 => 0,
1 => 1,
_ => fibonacci(n - 1) + fibonacci(n - 2),
}
}用 wasm-pack build --target web 编译,然后在 HTML 里直接调用。Rust 代码跑在浏览器里,亲眼看到了。
Web 后端——Rust 有自己的位置
Web 后端这个赛道,Go 的生态更成熟、上手更快。但 Rust 有自己的杀手场景。
Rust Web 后端适合什么?
- 性能敏感的 API 服务:金融交易、实时竞价、游戏服务器——零成本抽象和没有 GC 暂停的优势很明显
- 需要极致并发的服务:Tokio 的异步运行时性能非常好
- 长期运行的服务:没有 GC 意味着内存占用稳定,不会像 Java/Node 那样慢慢膨胀
主流框架:
- Axum (25k+ Stars) — Tokio 团队出品,设计优雅,类型安全的路由和中间件
- Actix-web (24k+ Stars) — 老牌框架,性能怪兽
- Rocket (25k+ Stars) — 早期很火,API 对新手友好
use axum::{routing::get, Router};
#[tokio::main]
async fn main() {
let app = Router::new().route("/", get(|| async { "Hello, World!" }));
let listener = tokio::net::TcpListener::bind("0.0.0.0:3000").await.unwrap();
axum::serve(listener, app).await.unwrap();
}判断: 如果团队 Rust 水平 OK,而且对延迟和资源占用有要求,Rust Web 后端值得投入。但如果你只是想快速搭个 CRUD API,Go 或者 Node.js 可能更实际。
数据库和存储引擎——硬核但回报巨大
这是最"系统编程"的方向,也是 Rust 最能发挥优势的地方。
标杆项目:
- TiKV (16k+ Stars) — 分布式 KV 存储,PingCAP 出品,已进入 CNCF
- SurrealDB (31k+ Stars) — 多模型数据库,支持 SQL、图、文档
- DataFusion (8k+ Stars) — Apache 基金会的查询引擎,纯 Rust 实现
- Polars (38k+ Stars) — DataFrame 库,Pandas 的 Rust 替代品,快到离谱
为什么存储引擎适合 Rust?
存储引擎需要精细控制内存(缓存、内存池、零拷贝),需要高并发(连接池、事务),需要长时间稳定运行(不能有 GC 暂停)。这三个需求恰好是 Rust 的强项。
练手建议: 从一个简单的键值存储引擎开始。实现基于 LSM-Tree 的存储引擎,支持 put/get/delete,能持久化到磁盘。这个项目会让你深入理解 Rust 的文件 I/O、内存管理、并发控制。
游戏和多媒体——不那么主流,但很有意思
- Bevy (45k+ Stars) — ECS 架构的游戏引擎,社区非常活跃
- Macroquad (4k+ Stars) — 极简的 2D 游戏库,适合写小游戏和 Game Jam
- wgpu (17k+ Stars) — WebGPU 的 Rust 实现,跨平台图形 API
有意思的方向: 用 Bevy 写一个小游戏。不需要多复杂,一个贪吃蛇、一个弹球。Bevy 的 ECS 架构会让你重新思考"游戏对象应该怎么组织",这个思维方式跟传统的面向对象游戏开发完全不同。
AI/ML 工具链——新风口
- uv (84k+ Stars) — Astral 出品的 Python 包管理器,Rust 写的,装包速度比 pip 快 10-100 倍
- Ruff (47k+ Stars) — Python linter,比 flake8 快几十倍
- burn (14k+ Stars) — 纯 Rust 的深度学习框架,还在早期但很有野心
- candle (20k+ Stars) — Hugging Face 出品的 ML 推理框架,轻量级
AI 的核心计算还是 CUDA/Python 的天下。但 AI 的周边工具——数据预处理、模型服务、推理优化、包管理——这些需要高性能和可靠性。Rust 在这个位置上如鱼得水。
最后的碎碎念
选项目比选语言重要。
你不需要等"学完 Rust"才开始写项目。学完所有权和生命周期就可以动手了,边写边学是最快的方式。Rust 的编译器错误信息真的很好——它不只告诉你错了,还告诉你怎么改。
排序建议:
- CLI 工具 — 最容易出成果,生态最成熟,练手首选
- TUI 应用 — 写给自己用,每天都能看到成果
- WASM 工具 — 未来趋势,现在入场正当时
- 终端/AI 开发环境 — Warp 开源后这个方向会越来越热
- Web 后端 — 对性能有极致追求时考虑
- 存储引擎 — 硬核但回报巨大,面试加分项
- 游戏 — 纯粹为了好玩
- AI 工具 — 风口上的方向
别纠结选哪个,打开编辑器,cargo new my_project,开始写就对了。