awesome-rust/README.md

90 lines
6 KiB
Markdown
Raw Normal View History

2014-07-17 10:47:44 +00:00
# Awesome Rust
2014-07-17 13:05:35 +00:00
A curated list of awesome Rust code and resources. Inspired by the other [awesome lists](https://github.com/bayandin/awesome-awesomeness).
2014-07-17 11:02:40 +00:00
Only projects that are more than a prototype should be added. Projects that do not compile with Rust-nightly for a long time have to be removed.
2014-07-17 11:02:40 +00:00
- [Awesome Rust](#awesome-rust)
2014-07-17 13:05:35 +00:00
- [Code](#code)
2014-07-18 06:24:50 +00:00
- [Audio](#audio)
2014-07-17 14:34:35 +00:00
- [Compression](#compression)
2014-07-18 06:35:28 +00:00
- [Computation](#computation)
2014-07-17 14:34:35 +00:00
- [Cryptography](#cryptography)
2014-07-20 12:56:41 +00:00
- [Encoding](#encoding)
2014-07-20 13:02:45 +00:00
- [GUI](#gui)
2014-07-17 11:02:40 +00:00
- [Web Programming](#web-programming)
2014-07-17 13:05:35 +00:00
- [Resources](#resources)
2014-07-17 11:02:40 +00:00
2014-07-17 10:47:44 +00:00
2014-07-17 13:05:35 +00:00
## Code
2014-07-18 06:24:50 +00:00
### Audio
* [bjz/openal-rs](https://github.com/bjz/openal-rs/) — [OpenAL 1.1](http://www.openal.org/) bindings
2014-07-18 06:27:52 +00:00
* [JeremyLetang/ears](https://github.com/JeremyLetang/ears) — a simple library to play Sounds and Musics, on top of OpenAL and libsndfile [<img src="https://travis-ci.org/jeremyletang/ears.png?branch=master">](https://travis-ci.org/JeremyLetang/ears)
2014-07-18 06:28:37 +00:00
* [JeremyLetang/rust-portaudio](https://github.com/JeremyLetang/rust-portaudio) — [PortAudio](http://www.portaudio.com/) bindings [<img src="https://travis-ci.org/jeremyletang/rust-portaudio.png?branch=master">](https://travis-ci.org/JeremyLetang/rust-portaudio)
2014-07-20 12:47:58 +00:00
* [musitdev/rust-portmidi](https://github.com/musitdev/rust-portmidi) — [PortMidi](http://portmedia.sourceforge.net/portmidi/) bindings [<img src="https://travis-ci.org/musitdev/rust-portmidi.png?branch=master">](https://travis-ci.org/musitdev/rust-portmidi)
2014-07-18 06:24:50 +00:00
2014-07-17 14:31:09 +00:00
### Compression
2014-07-20 12:48:54 +00:00
* [lifthrasiir/rust-zip](https://github.com/lifthrasiir/rust-zip) — read and write ZIP archives [<img src="https://travis-ci.org/lifthrasiir/rust-zip.png?branch=master">](https://travis-ci.org/lifthrasiir/rust-zip)
2014-07-17 14:31:09 +00:00
2014-07-18 06:35:53 +00:00
### Computation
2014-07-18 06:35:28 +00:00
* [eholk/rust-opencl](https://github.com/eholk/rust-opencl) — [OpenCL](https://www.khronos.org/opencl/) bindings [<img src="https://travis-ci.org/eholk/rust-opencl.png?branch=master">](https://travis-ci.org/eholk/rust-opencl)
2014-07-17 14:34:35 +00:00
### Cryptography
2014-07-20 12:46:09 +00:00
* [DaGenix/rust-crypto](https://github.com/DaGenix/rust-crypto) — cryptographic algorithms in Rust [<img src="https://travis-ci.org/DaGenix/rust-crypto.png?branch=master">](https://travis-ci.org/DaGenix/rust-crypto)
2014-07-17 15:08:04 +00:00
* [sfackler/rust-openssl](https://github.com/sfackler/rust-openssl) — OpenSSL bindings [<img src="https://travis-ci.org/sfackler/rust-openssl.png?branch=master">](https://travis-ci.org/sfackler/rust-openssl)
2014-07-17 14:34:35 +00:00
2014-07-20 12:56:41 +00:00
### Encoding
* Cap'n Proto
* [dwrensha/capnproto-rust](https://github.com/dwrensha/capnproto-rust) — [<img src="https://travis-ci.org/dwrensha/capnproto-rust.png?branch=master">](https://travis-ci.org/dwrensha/capnproto-rust)
* Character Encoding
* [lifthrasiir/rust-encoding](https://github.com/lifthrasiir/rust-encoding) — [<img src="https://travis-ci.org/lifthrasiir/rust-encoding.png?branch=rust-0.9-pre">](https://travis-ci.org/lifthrasiir/rust-encoding)
* CSV
* [BurntSushi/rust-csv](https://github.com/BurntSushi/rust-csv) — [<img src="https://api.travis-ci.org/BurntSushi/rust-csv.png">](https://travis-ci.org/BurntSushi/rust-csv)
* [Geal/rust-csv](https://github.com/Geal/rust-csv) — [<img src="https://travis-ci.org/Geal/rust-csv.png?branch=master">](https://travis-ci.org/Geal/rust-csv)
* MsgPck
* [mneumann/rust-msgpack](https://github.com/mneumann/rust-msgpack) — [<img src="https://travis-ci.org/mneumann/rust-msgpack.png?branch=master">](https://travis-ci.org/mneumann/rust-msgpack)
* ProtocolBuffers
* [stepancheg/rust-protobuf](https://github.com/stepancheg/rust-protobuf) — [<img src="https://travis-ci.org/stepancheg/rust-protobuf.png?branch=master">](https://travis-ci.org/stepancheg/rust-protobuf)
* [tildeio/buffoon](https://github.com/tildeio/buffoon)
* TOML
2014-07-20 12:58:07 +00:00
* [alexcrichton/toml-rs](https://github.com/alexcrichton/toml-rs) —
2014-07-20 12:56:41 +00:00
* Tnetstring
* [erickt/rust-tnetstring](https://github.com/erickt/rust-tnetstring) — [<img src="https://travis-ci.org/erickt/rust-tnetstring.png?branch=master">](https://travis-ci.org/erickt/rust-tnetstring)
* XML
* [bjz/sax-rs](https://github.com/bjz/sax-rs) — bindings to libxml2's SAX parser [<img src="https://travis-ci.org/bjz/sax-rs.png?branch=master">](https://travis-ci.org/bjz/sax-rs)
2014-07-20 12:58:07 +00:00
* [DanielFath/xml-parser](https://github.com/DanielFath/xml-parser) — A hybrid pull, DOM parser written in pure Rust [![Build Status](https://travis-ci.org/DanielFath/xml-parser.png?branch=master)](https://travis-ci.org/DanielFath/xml-parser)
2014-07-20 12:56:41 +00:00
* [Florob/RustyXML](https://github.com/Florob/RustyXML) — an XML parser written in Rust
* [netvl/rust-xml](https://github.com/netvl/rust-xml) — a streaming XML library
2014-07-20 13:02:45 +00:00
### GUI
2014-07-20 12:56:41 +00:00
2014-07-20 13:02:45 +00:00
* Cocoa
* [mozilla-servo/rust-cocoa](https://github.com/mozilla-servo/rust-cocoa) —
* Gtk
* [JeremyLetang/rgtk](https://github.com/JeremyLetang/rgtk) —
* ncurses
* [jeaye/ncurses-rs](https://github.com/jeaye/ncurses-rs) — [![Build Status](https://travis-ci.org/jeaye/ncurses-rs.png?branch=master)](https://travis-ci.org/jeaye/ncurses-rs.png)
* Termbox
* [gchp/rustbox](https://github.com/gchp/rustbox) —
2014-07-20 12:56:41 +00:00
2014-07-17 13:05:35 +00:00
### Web Programming
2014-07-17 10:47:44 +00:00
See also http://arewewebyet.com/
* core
* [chris-morgan/rust-http](https://github.com/chris-morgan/rust-http) — will be replaced by [Teepee](http://teepee.rs/). [<img src="https://travis-ci.org/chris-morgan/rust-http.png?branch=master">](https://travis-ci.org/chris-morgan/rust-http)
2014-07-17 10:47:44 +00:00
* client
2014-07-17 15:08:04 +00:00
* [carllerche/curl-rust](https://github.com/carllerche/curl-rust) — [libcurl](http://curl.haxx.se/libcurl/) bindings
2014-07-17 10:47:44 +00:00
* server
2014-07-20 12:50:45 +00:00
* [erickt/rust-mongrel2](https://github.com/erickt/rust-mongrel2) — [Mongrel2](http://mongrel2.org) bindings [<img src="https://travis-ci.org/erickt/rust-mongrel2.png?branch=master">](https://travis-ci.org/erickt/rust-mongrel2)
2014-07-18 07:17:52 +00:00
* [Iron](http://ironframework.io/) — inspired by [Express](http://expressjs.com/). [<img src="https://travis-ci.org/iron/iron.png?branch=master">](https://travis-ci.org/iron/iron)
2014-07-18 06:19:11 +00:00
* [Nickel](http://nickel.rs/) — inspired by [Express](http://expressjs.com/).
2014-07-18 06:16:18 +00:00
2014-07-17 13:05:35 +00:00
## Resources
* [Rust by Example](http://rustbyexample.com/)