├── README.md ├── Rust in TiKV.pdf ├── UNSTABLE.md └── concurrency-in-rust.pdf /README.md: -------------------------------------------------------------------------------- 1 | # Awesome Rust 2 | Note:本项目由 [Rust中文社区](http://www.rust.cc) 发起和运作,最初翻译[kud1ing](https://github.com/kud1ing/awesome-rust)创建的awesome-rust 3 | 4 | 关于Rust代码和资源的一些汇总列表,受[awesome lists](https://github.com/bayandin/awesome-awesomeness)的启发 5 | 只有稳定的和对用户有用的才会增加,如果很长一段时间项目一直不能使用Rust-nightly去构建将会被移到[UNSTABLE.md](UNSTABLE.md). 6 | 7 | - [Awesome Rust](#awesome-rust) 8 | - [代码](#代码) 9 | - [音频](#音频) 10 | - [构建系统](#构建系统) 11 | - [命令行参数解析](#命令行参数解析) 12 | - [压缩](#压缩) 13 | - [计算](#计算) 14 | - [密码学](#密码学) 15 | - [数据库](#数据库) 16 | - [编码](#编码) 17 | - [游戏开发](#游戏开发) 18 | - [游戏](#游戏) 19 | - [GUI](#gui) 20 | - [图像处理](#图像处理) 21 | - [网络编程](#网络编程) 22 | - [模板引擎](#模板引擎) 23 | - [测试](#测试) 24 | - [Web编程](#Web编程) 25 | - [资源](#资源) 26 | 27 | ## 代码 28 | 29 | 30 | ### 音频 31 | 32 | * [bjz/openal-rs](https://github.com/bjz/openal-rs/) — [OpenAL 1.1](http://www.openal.org/)绑定 33 | * [JeremyLetang/ears](https://github.com/JeremyLetang/ears) — 简易的声音播放库, 构建在OpenAL与libsndfile之上 [](https://travis-ci.org/JeremyLetang/ears) 34 | * [JeremyLetang/rust-portaudio](https://github.com/JeremyLetang/rust-portaudio) — [PortAudio](http://www.portaudio.com/)绑定 [](https://travis-ci.org/JeremyLetang/rust-portaudio) 35 | * [musitdev/rust-portmidi](https://github.com/musitdev/rust-portmidi) — [PortMidi](http://portmedia.sourceforge.net/portmidi/)绑定 [](https://travis-ci.org/musitdev/rust-portmidi) 36 | 37 | ### 构建系统 38 | 39 | * [Cargo](http://crates.io) — Rust包管理 40 | * CMake 41 | * [SiegeLord/RustCMake](https://github.com/SiegeLord/RustCMake) — 示例项目展示在Rust中使用CMake [](https://travis-ci.org/SiegeLord/RustCMake) 42 | * Make 43 | * [PistonDevelopers/rust-empty](https://github.com/PistonDevelopers/rust-empty) — 在Rust中使用Makefile构建,现已弃用被cargo取代 44 | 45 | ### 命令行参数解析 46 | 47 | * [docopt/docopt.rs](https://github.com/docopt/docopt.rs) — Rust实现[DocOpt](http://docopt.org)用于命令行参数解析 [](https://travis-ci.org/docopt/docopt.rs) 48 | 49 | ### 压缩 50 | 51 | * [alexcrichton/bzip2-rs](https://github.com/alexcrichton/bzip2-rs) — [libbz2](http://www.bzip.org)绑定 [](https://travis-ci.org/alexcrichton/bzip2-rs) 52 | * [alexcrichton/tar-rs](https://github.com/alexcrichton/tar-rs) — tar归档包读写 [](https://travis-ci.org/alexcrichton/tar-rs) 53 | * [lifthrasiir/rust-zip](https://github.com/lifthrasiir/rust-zip) — ZIP归档包读写 [](https://travis-ci.org/lifthrasiir/rust-zip) 54 | 55 | ### 计算 56 | 57 | * [eholk/rust-opencl](https://github.com/eholk/rust-opencl) — [OpenCL](https://www.khronos.org/opencl/)绑定 [](https://travis-ci.org/eholk/rust-opencl) 58 | * [thestinger/rust-gmp](https://github.com/thestinger/rust-gmp) — [libgmp](https://gmplib.org/)绑定 59 | 60 | ### 密码学 61 | 62 | * [DaGenix/rust-crypto](https://github.com/DaGenix/rust-crypto) — Rust实现的各种加密算法 [](https://travis-ci.org/DaGenix/rust-crypto) 63 | * [dnaq/sodiumoxide](https://github.com/dnaq/sodiumoxide) — [libsodium](https://github.com/jedisct1/libsodium)绑定 64 | * [klutzy/suruga](https://github.com/klutzy/suruga) — [TLS 1.2](http://tools.ietf.org/html/rfc5246)Rust实现 65 | * [seb-m/common.rs](https://github.com/klutzy/suruga) — 实用的Rust加密工具 66 | * [sfackler/rust-openssl](https://github.com/sfackler/rust-openssl) — [OpenSSL](https://www.openssl.org/)绑定 [](https://travis-ci.org/sfackler/rust-openssl) 67 | 68 | ### 数据库 69 | 70 | * SQL 71 | * MySql 72 | * [blackbeam/rust-mysql-simple](https://github.com/blackbeam/rust-mysql-simple) — rust实现的Mysql客户端库 [](https://travis-ci.org/blackbeam/rust-mysql-simple) 73 | * PostgreSql 74 | * [sfackler/rust-postgres](https://github.com/sfackler/rust-postgres) — [PostgreSQL](http://www.postgresql.org)驱动 [](https://travis-ci.org/sfackler/rust-postgres) 75 | * Sqlite 76 | * [linuxfood/rustsqlite](https://github.com/linuxfood/rustsqlite) — [Sqlite3](http://www.sqlite.org/)绑定 77 | 78 | ### 编码 79 | 80 | * Cap'n Proto 81 | * [dwrensha/capnproto-rust](https://github.com/dwrensha/capnproto-rust) — [](https://travis-ci.org/dwrensha/capnproto-rust) 82 | * Character Encoding 83 | * [lifthrasiir/rust-encoding](https://github.com/lifthrasiir/rust-encoding) — [](https://travis-ci.org/lifthrasiir/rust-encoding) 84 | * CSV 85 | * [BurntSushi/rust-csv](https://github.com/BurntSushi/rust-csv) — [](https://travis-ci.org/BurntSushi/rust-csv) 86 | * HTML 87 | * [servo/html5ever](https://github.com/servo/html5ever) — 高性能浏览器级别的HTML5解析器 [](https://travis-ci.org/servo/html5ever) 88 | * MsgPck 89 | * [mneumann/rust-msgpack](https://github.com/mneumann/rust-msgpack) — [](https://travis-ci.org/mneumann/rust-msgpack) 90 | * [3Hren/msgpack-rust](https://github.com/3Hren/msgpack-rust) — a pure Rust low/high level MessagePack implementation [](https://travis-ci.org/3Hren/msgpack-rust) 91 | * ProtocolBuffers 92 | * [stepancheg/rust-protobuf](https://github.com/stepancheg/rust-protobuf) — [](https://travis-ci.org/stepancheg/rust-protobuf) 93 | * TOML 94 | * [alexcrichton/toml-rs](https://github.com/alexcrichton/toml-rs) 95 | * Tnetstring 96 | * XML 97 | * [Florob/RustyXML](https://github.com/Florob/RustyXML) — Rust写的一个XML解析器 [](https://travis-ci.org/Florob/RustyXM) 98 | * [netvl/rust-xml](https://github.com/netvl/rust-xml) — 基于流的XML解析库 [](https://travis-ci.org/netvl/rust-xml) 99 | 100 | ### 游戏开发 101 | 102 | * [bbodi/rust-voxlap](https://github.com/bbodi/rust-voxlap) — [Voxlap](http://advsys.net/ken/voxlap.htm)绑定 103 | * [PistonDevelopers/piston](https://github.com/pistondevelopers/piston) — [](https://travis-ci.org/PistonDevelopers/piston) 104 | * [SiegeLord/RustAllegro](https://github.com/SiegeLord/RustAllegro) — [Allegro 5](http://liballeg.org/)绑定 [](https://travis-ci.org/SiegeLord/RustAllegro) 105 | 106 | ### 游戏 107 | 108 | * [lifthrasiir/angolmois-rust](https://github.com/lifthrasiir/angolmois-rust) — 简约的音乐视频游戏支持BMS格式 [](https://travis-ci.org/lifthrasiir/angolmois-rust) 109 | 110 | ### GUI 111 | 112 | * Cocoa 113 | * [mozilla-servo/rust-cocoa](https://github.com/mozilla-servo/rust-cocoa) 114 | * Gtk+ 115 | * [JeremyLetang/rgtk](https://github.com/JeremyLetang/rgtk) — [Gtk+](http://www.gtk.org)绑定 [](https://travis-ci.org/jeremyletang/rgtk) 116 | * ncurses 117 | * [jeaye/ncurses-rs](https://github.com/jeaye/ncurses-rs) — [](https://travis-ci.org/jeaye/ncurses-rs) 118 | * OpenGL 119 | * [tomaka/glutin](https://github.com/tomaka/glutin) — 用于替代[GLFW](http://www.glfw.org/) [](https://travis-ci.org/tomaka/glutin) 120 | * SDL 121 | * [AngryLawyer/rust-sdl2](https://github.com/AngryLawyer/rust-sdl2) — [SDL2](http://www.libsdl.org/)绑定 [](https://travis-ci.org/AngryLawyer/rust-sdl2) 122 | * [brson/rust-sdl](https://github.com/brson/rust-sdl) — [SDL1](http://www.libsdl.org/)绑定 [](https://travis-ci.org/brson/rust-sdl) 123 | * SFML 124 | * [jeremyletang/rust-sfml](https://github.com/JeremyLetang/rust-sfml) — [SFML](http://www.sfml-dev.org/)绑定 [](https://travis-ci.org/jeremyLetang/rust-sfml) 125 | * Termbox 126 | * [gchp/rustbox](https://github.com/gchp/rustbox) — Rust实现的[termbox](http://github.com/nsf/termbox)库 127 | * wxWidgets 128 | 129 | ### 图像处理 130 | 131 | * [PistonDevelopers/image](https://github.com/PistonDevelopers/image) — 图像的编码与解码 [](https://travis-ci.org/PistonDevelopers/image) 132 | 133 | ### 网络编程 134 | 135 | * Low level 136 | * [libpnet/libpnet](https://github.com/libpnet/libpnet) — 跨平台、底层网络库 [](https://travis-ci.org/libpnet/libpnet) 137 | * NanoMsg 138 | * [thehydroimpulse/nanomsg.rs](https://github.com/thehydroimpulse/nanomsg.rs) — ZeroMQ之后一个现代化的消息通信库 [](https://travis-ci.org/thehydroimpulse/nanomsg.rs) 139 | * SSH 140 | * [alexcrichton/ssh2-rs](https://github.com/alexcrichton/ssh2-rs) — [libssh2](http://www.libssh2.org/)绑定 [](https://travis-ci.org/alexcrichton/ssh2-rs) 141 | * Stomp 142 | * [zslayton/stomp-rs](https://github.com/zslayton/stomp-rs) — Rust实现[STOMP 1.2](http://stomp.github.io/stomp-specification-1.2.html)客户端 [](https://travis-ci.org/zslayton/stomp-rs) 143 | * ZeroMQ 144 | 145 | ### 模板引擎 146 | 147 | * Mustache 148 | * [rustache/rustache](https://github.com/rustache/rustache) — [](https://travis-ci.org/rustache/rustache) 149 | 150 | ### 测试 151 | 152 | * [BurntSushi/quickcheck](https://github.com/BurntSushi/quickcheck) — Rust实现[QuickCheck](http://www.haskell.org/haskellwiki/Introduction_to_QuickCheck1) [](https://travis-ci.org/BurntSushi/quickcheck) 153 | * [farcaller/shiny](https://github.com/farcaller/shiny) — ruby's rspec或Objective-C's kiwi类似的语法 [](https://travis-ci.org/farcaller/shiny) 154 | 155 | ### Web编程 156 | 157 | See also [http://arewewebyet.com/](http://arewewebyet.com/) 158 | 159 | * Core 160 | * [chris-morgan/rust-http](https://github.com/chris-morgan/rust-http) — 将会被[Teepee](http://teepee.rs/)取代 [](https://travis-ci.org/chris-morgan/rust-http) 161 | * [hyperium/hyper](https://github.com/hyperium/hyper) — [](https://travis-ci.org/hyperium/hyper) 162 | * Client 163 | * [carllerche/curl-rust](https://github.com/carllerche/curl-rust) — [libcurl](http://curl.haxx.se/libcurl/)绑定 164 | * [vhbit/curl-rs](https://github.com/vhbit/curl-rs) — [libcurl](http://curl.haxx.se/libcurl/)绑定 165 | * Server 166 | * [Iron](http://ironframework.io/) — 灵感来源于[Express](http://expressjs.com/) [](https://travis-ci.org/iron/iron) 167 | * [Nickel](http://nickel.rs/) — 灵感来源于[Express](http://expressjs.com/) [](https://travis-ci.org/nickel-org/nickel.rs) 168 | 169 | ## 资源 170 | 171 | * [Rust by Example](http://rustbyexample.com/) 172 | * [Rust CI](http://www.rust-ci.org) — a [Travis CI](https://travis-ci.com) dashboard for Rust projects 173 | * [Rust Guidelines](http://aturon.github.io) 174 | -------------------------------------------------------------------------------- /Rust in TiKV.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rustcc/awesome-rust/5adb8d9e2ed114ad600ec2ae5aa3dfd435333e5f/Rust in TiKV.pdf -------------------------------------------------------------------------------- /UNSTABLE.md: -------------------------------------------------------------------------------- 1 | # 不稳定的 2 | 一些不稳定的或试验性的Rust项目汇总,希望有一天能迁移至`README.md`. 3 | 4 | - [Awesome Rust](#awesome-rust) 5 | - [代码](#代码) 6 | - [音频](#音频) 7 | - [构建系统](#构建系统) 8 | - [命令行参数解析](#命令行参数解析) 9 | - [压缩](#压缩) 10 | - [计算](#计算) 11 | - [密码学](#密码学) 12 | - [数据库](#数据库) 13 | - [编码](#编码) 14 | - [游戏开发](#游戏开发) 15 | - [游戏](#游戏) 16 | - [GUI](#gui) 17 | - [图像处理](#图像处理) 18 | - [网络编程](#网络编程) 19 | - [模板引擎](#模板引擎) 20 | - [测试](#测试) 21 | - [Web编程](#Web编程) 22 | - [资源](#资源) 23 | 24 | ## 代码 25 | 26 | 27 | ### 音频 28 | 29 | 30 | ### 构建系统 31 | 32 | * CMake 33 | * Make 34 | 35 | ### 命令行参数解析 36 | 37 | * [wycats/hammer.rs](https://github.com/wycats/hammer.rs) 38 | 39 | ### 压缩 40 | 41 | 42 | ### 计算 43 | 44 | 45 | ### 密码学 46 | 47 | 48 | ### 数据库 49 | 50 | * SQL 51 | * MySql 52 | * PostgreSql 53 | * Sqlite 54 | 55 | ### 编码 56 | 57 | * Cap'n Proto 58 | * Character Encoding 59 | * CSV 60 | * [Geal/rust-csv](https://github.com/Geal/rust-csv) — [](https://travis-ci.org/Geal/rust-csv) 61 | * HTML 62 | * MsgPck 63 | * ProtocolBuffers 64 | * TOML 65 | * Tnetstring 66 | * [erickt/rust-tnetstring](https://github.com/erickt/rust-tnetstring) — [](https://travis-ci.org/erickt/rust-tnetstring) 67 | * XML 68 | * [Ygg01/xml-air](https://github.com/Ygg01/xml-air) — Rust写的一个DOM解析器 [](https://travis-ci.org/Ygg01/xml-air) 69 | 70 | ### 游戏开发 71 | 72 | * [bjz/bullet-rs](https://github.com/bjz/bullet-rs) 73 | * [JeremyLetang/rustenstein3D](https://github.com/JeremyLetang/rustenstein3D/) — 光线投射引擎 74 | * [sebcrozet/kiss3d](https://github.com/sebcrozet/kiss3d) 75 | * [sebcrozet/ncollide](https://github.com/sebcrozet/ncollide) 76 | * [sebcrozet/nphysics](https://github.com/sebcrozet/nphysics) 77 | 78 | ### 游戏 79 | 80 | * [Arcterus/game-of-life](https://github.com/Arcterus/game-of-life) 81 | * [Arcterus/rust-snake](https://github.com/Arcterus/rust-snake) 82 | * [bachm/rusty-tetris](https://github.com/bachm/rusty-tetris) 83 | * [bvssvni/rust-snake](https://github.com/bvssvni/rust-snake) 84 | * [Coeuvre/rust-2048](https://github.com/Coeuvre/rust-2048) 85 | * [Coeuvre/rust-pong](https://github.com/Coeuvre/rust-pong) 86 | * [dpc/rustyhex](https://github.com/dpc/rustyhex) 87 | * [FrozenCow/rust-airhockey](https://github.com/FrozenCow/rust-airhockey) 88 | * [jeaye/q3](https://github.com/jeaye/q3) 89 | * [mynery/xxo](https://github.com/mynery/xxo) 90 | * [ozkriff/marauder](https://github.com/ozkriff/marauder) 91 | * [rlane/cubeland](https://github.com/rlane/cubeland) 92 | * [zokier/pong-rs](https://github.com/zokier/pong-rs) 93 | 94 | ### GUI 95 | 96 | * Cocoa 97 | * Gtk+ 98 | * ncurses 99 | * OpenGL 100 | * [bjz/gl-rs](https://github.com/bjz/gl-rs) 101 | * [bjz/glfw-rs](https://github.com/bjz/glfw-rs) 102 | * [servo/rust-glut](https://github.com/mozilla-servo/rust-glut) 103 | * [servo/rust-opengles](https://github.com/servo/rust-opengles) 104 | * SDL 105 | * SFML 106 | * Termbox 107 | * wxWidgets 108 | * [kenz-gelsoft/wxRust](https://github.com/kenz-gelsoft/wxRust) — [wxWidgets](http://www.wxwidgets.org/)绑定 [](https://travis-ci.org/kenz-gelsoft/wxRust) 109 | 110 | ### 图像处理 111 | 112 | 113 | ### 网络编程 114 | 115 | * Low level 116 | * NanoMsg 117 | * SSH 118 | * Stomp 119 | * ZeroMQ 120 | * [erickt/rust-zmq](https://github.com/erickt/rust-zmq) — [ZeroMQ](http://zeromq.org)绑定 [](https://travis-ci.org/erickt/rust-zmq) 121 | 122 | ### 模板引擎 123 | 124 | * Mustache 125 | * [erickt/rust-mustache](https://github.com/erickt/rust-mustache) — [](https://travis-ci.org/erickt/rust-mustache) 126 | 127 | ### 测试 128 | 129 | 130 | ### Web编程 131 | 132 | See also [http://arewewebyet.com/](http://arewewebyet.com/) 133 | 134 | * Core 135 | * [Teepee](http://teepee.rs/) — [](https://travis-ci.org/teepee/teepee) 136 | * Client 137 | * Server 138 | * [erickt/rust-mongrel2](https://github.com/erickt/rust-mongrel2) — [Mongrel2](http://mongrel2.org)绑定 [](https://travis-ci.org/erickt/rust-mongrel2) 139 | 140 | ## 资源 141 | -------------------------------------------------------------------------------- /concurrency-in-rust.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rustcc/awesome-rust/5adb8d9e2ed114ad600ec2ae5aa3dfd435333e5f/concurrency-in-rust.pdf --------------------------------------------------------------------------------