rust-unofficial/awesome-rust · 上手攻略

  • 仓库:rust-unofficial/awesome-rust
  • 链接:https://github.com/rust-unofficial/awesome-rust
  • 分类:学习资源 · Rust 生态
  • 作者:Tom
  • 更新:2026-07-14

这是什么

rust-unofficial/awesome-rust 是 Rust 生态中最老牌、最全面的资源聚合列表,由社区维护,GitHub 星标数超过 5.8 万。它不是一个代码库,而是一张 Rust 世界的地图——收录了 Rust 语言相关的应用程序、库、开发工具、学习资源,覆盖从入门到生产级项目的全链路。

该列表按照「应用程序 → 开发工具 → 库 → 资源 → 注册中心」四大板块组织,每个板块下细分为数十个子类目(如区块链、游戏开发、GUI、异步编程、机器学习等),总计收录数百个优质项目,是 Rust 开发者日常查阅和探索的第一参考。


解决什么问题

痛点 awesome-rust 的解法
想学 Rust,不知道从哪里入手 Resources 板块汇集了教程、书籍、课程、博客等系统学习路径
不知道 Rust 生态里有什么成熟工具 Applications 板块按领域分类,列出了生产可用的项目(如 Alacritty、Deno、Arti)
做某个具体方向(如图形渲染),不知道用什么库 Libraries 板块按技术方向细分,每个条目附 crates.io 链接和简短说明
想找对标其他语言生态的工具(如 Python 的 numpy) 列表中的对标说明可快速定位 Rust 替代方案
不知道某个库是否还在维护、质量如何 列表经过社区审核,项目多为活跃或知名项目,有 GitHub 链接可自查

列表结构一览

整个列表分为四大板块:

1. Applications(应用程序)

已用 Rust 编写并公开可用的生产级项目,按领域分类:

子类目 代表项目
Audio and Music
Blockchain
Database DBX(支持 MySQL/PostgreSQL/SQLite/Redis/MongoDB/DuckDB 的 Tauri 客户端)
Embedded
Emulators
Finance
Games
Graphics
Image processing
MLOps
Observability
Operating systems
Security tools Arti(Tor 客户端实现)、boringtun(Cloudflare WireGuard)
System tools alacritty(GPU 终端)、glazewm(Windows tiling 窗口管理器)
Text editors
Text processing
Virtualization
Web denoland/deno(JS/TS 运行时)
Web Servers

注:实际列表内容丰富,此处仅列举部分代表性条目,完整列表请直接访问 GitHub。

2. Development tools(开发工具)

子类目 说明
Build system Cargo 生态构建工具
Debugging GDB/LLDB 集成、rtrace 等
FFI 与 C/其他语言互操作
Formatters rustfmt、rust-analyzer 相关
IDEs VS Code 插件、IDEA 插件等
Profiling perf 集成、cargo-flamegraph 等
Static analysis clippy(官方 lint 工具)、miri 等
Testing cargo test、proptest、criterion 等
Transpiling rusc、wasm-bindgen 等
Tunnel 内网穿透工具

3. Libraries(库)

这是列表最庞大的部分,涵盖几乎所有技术方向的核心库:

子类目 代表库/生态
Artificial Intelligence tangram、rust-bert(NLP)、 candle(HuggingFace 风格 ML)、Oxlint(?)
Asynchronous tokio(异步运行时)、async-std、smol
Audio and Music rodio、 kira
CLI clap、structopt、indicatif、 console
Compression flate2、zstd、lz4
Cryptography ring、aes-gcm、ed25519-dalek、rand
Database sqlx、diesel、rusqlite、sea-orm
Game development bevy(游戏引擎)、ggez、macroquad
GUI egui、iced、relm、GTK-rs
Image processing image、kamadak-exif
Network programming reqwest、hyper、actix-web
Parsing pest、nom、tree-sitter(语法解析)
Web programming axum、actix-web、poem、leptos
Encoding serde(序列化)、bincode、cbor
GUI(平台) flutter-rs(Rust Flutter 绑定)

4. Resources(学习资源)

  • 官方文档、Rust by Example、Rustlings
  • 书籍(《The Rust Programming Language》、 《Programming Rust》)
  • 博客、课程、视频
  • Playground 和 REPL(推荐汉化版 rust-book)
  • 社区列表和 RustBridge 活动

如何高效使用

awesome-rust 是一个导航性质的列表,不是需要从头到尾阅读的书籍。建议按需查阅:

方式一:从问题出发

遇到具体需求(如"需要做图像处理")→ 在 Libraries 目录找到 Image processing → 逐条查看 README 和 crates.io 数据 → 选型。

方式二:从生态概览出发

新接触 Rust → 先浏览 Applications 了解生态成熟度 → 再看 Resources 的入门路径 → 最后看 Libraries 建立技术地图。

方式三:结合 crates.io 一起用

awesome-rust 给出的是方向性推荐,crates.io 可以搜索具体的 crate 排名、下载量和维护状态,两者结合做选型决策。


典型使用场景

场景一:技术选型调研

你想为新项目选一个 HTTP 客户端库。打开 awesome-rust → Libraries → Network programming,找到 reqwest,点击链接进入 crates.io 看下载量和维护记录,比在搜索引擎里大海捞针高效得多。

场景二:了解 Rust 生态边界

作为 Java/Go 开发者想了解 Rust 能否替代,浏览 Applications 板块看看哪些知名项目已经用 Rust 重写(如 Deno、Cloudflare 的产品),对自己做技术判断很有帮助。

场景三:找学习路径

Rust 初学者在 Resources 板块找到 rustlings(交互式练习题)和 《The Rust Programming Language》官方书,按部就班学习效率最高。

场景四:找特定领域的库

需要做机器学习相关的数据处理?Libraries → Artificial Intelligence → Machine learning 可快速定位 rust-bert、candle、dfdx 等库,避免重复造轮子。


坑与注意

  1. awesome-list 天然存在维护滞后问题:awesome-rust 虽然社区活跃,但列表中部分项目可能已停止维护。建议点进项目主页查看最近 commit 时间和发布版本再正式采用。

  2. 同领域库很多,选择困难:如 Web 框架就有 actix-web、axum、poem、rocket、leptos 等多个选项,各有侧重。actix-web 性能最强但上手曲线陡;axum 轻量且与 Tower/Tokio 生态贴合;leptos 全栈同构。需根据项目规模和技术栈偏好选择。

  3. 不是所有子类目都有内容:部分细分领域(如某些特定方向)可能为空或内容很少,不代表 Rust 在这些方向没有生态,需要进一步用 crates.io 搜索。

  4. 不提供库的详细对比:列表只收录和分类,不做横向评测。依赖库选择时需要自行对比 README、benchmark 和社区反馈。

  5. 中文资源有限:awesome-rust 主要是英文内容,中文学习者可搭配 rustforce.net、知乎 Rust 话题和 Rust 语言中文社区补充。


与同类对比

列表 规模 特点 适合人群
awesome-rust(本列表) ~58k stars,400+ 项目 最全、应用/库/工具全覆盖 各类 Rust 开发者
lib.rs crates.io 生态索引 按 crate 维度展示排名和分类 做技术选型时精确搜索
Rust Wiki 文档型 概念解释和最佳实践 深入理解语言设计
This Week in Rust 周报型 每周生态动态、新 crate、博客 跟进最新发展
awesome-rust-search 工具型 对 awesome-rust 内容做全文搜索 快速定位

awesome-rust 是所有这些资源中覆盖面最广、分类最系统的,适合作为了解 Rust 全貌的起点。


一句话推荐结论

rust-unofficial/awesome-rust 是 Rust 开发者必备的生态地图,无论你是刚接触 Rust 还是资深用户需要做技术选型,它都是最值得收藏和定期翻阅的 Rust 资源入口。