Awesome Rust
A curated list of Rust code and resources.
If you want to contribute, please read this .
Table of Contents
Applications written in Rust
See also Friends of Rust (organizations running Rust in production).
andschwa/rust-genetic-algorithm 19 3 — a genetic algorithm for academic benchmark problems
azerupi/mdBook 135 33 — a command line utility to create books from markdown files
bluejekyll/trust-dns 750 67 — a DNS-server
ivanceras/diwata — a database administration tool for postgresql
cobalt-org/cobalt.rs 437 79 - Static site generator written in Rust
runconduit/conduit 859 49 - Ultralight service mesh for Kubernetes.
danielrangel/rsign [rsign ] — A simple command-line tool used to generate/sign/verify digital signatures designed to be compatible with Minisign
darrint/device-blocker — Limit screen time to children's various mobile devices by blocking internet access on the family Wifi router.
dlecan/generic-dns-update 3 3 — a tool to update DNS zonefiles with your IP address
Factotum 77 5 — A system to programmatically run data pipelines
fcsonline/drill 36 2 — a HTTP load testing application inspired by Ansible syntax
Fractalide 327 22 — Simple Rust Microservices
habitat — An tool created by Chef to build, deploy, and manage applications.
imjacobclark/Herd 67 6 — an experimental HTTP load testing application
intecture/api 4 3 — an API-driven server management and configuration tool
jedisct1/flowgger 223 12 — a fast, simple and lightweight data collector
jwilm/alacritty 9k 418 — a cross-platform, GPU enhanced terminal emulator
kbknapp/docli 27 2 — a command line utility for managing DigitalOcean infrastructure
MaidSafe — a decentralized platform.
nicohman/eidolon 16 1 — a steam and drm-free game registry and launcher for linux and macosx
notty 2k 40 — A new kind of terminal
Parity 3k 535 — Fast, light, and robust Ethereum implementation
parity-bitcoin 284 57 — The Parity Bitcoin client
Pijul — a patch-based distributed version control system
qmx/limonite 30 1 — static blog/website generator
quadrupleslap/leven 36 5 [leven ] — a simple, parallelized blog generator.
Sandstorm Collections App 10 3
Servo 13k 3k — a prototype web browser engine
Weld 35 2 — Full fake REST API generator
Audio
indiscipline/zrtstr 2 1 — a command line utility for checking if stereo wav files are faux-stereo (i.e. have identical channels) and converting such files to mono.
Cryptocurrencies
ethaddrgen 12 2 — Custom Ethereum vanity address generator made in Rust
Parity 3k 535 — Fast, light, and robust Ethereum implementation
parity-bitcoin 284 57 — The Parity Bitcoin client
Database
Emulators [emulator ]
Commodore 64
Gameboy
NES
Playstation
ZX Spectrum
Virtual Boy
Emulator Development tools
Games , see also Games Made With Piston 2k 209 .
Graphics
Operating systems , see also A comparison of operating systems written in Rust 144 11
System tools
Text editors
gchp/iota 1k 85 — a simple text editor
mathall/rim 397 28 — Vim-like text editor written in Rust
xi-editor 12k 513 — a modern editor with a backend written in Rust.
Text processing
BurntSushi/ripgrep 7k 325 — combines the usability of The Silver Searcher with the raw speed of grep
BurntSushi/xsv 1k 68 — a fast CSV command line tool (slicing, indexing, selecting, searching, sampling, etc.)
Utilities
arthrp/quick-skeleton — Project scaffolding tool, similar to Yeoman and Slush.
yaa110/rubigo 19 3 — Golang dependency tool and package manager, written in Rust
amar-laksh/workstation - A commandline tool to help you manage your workstation by distancing you from your screen, locking your screen when you aren't there among other things with OPENCV!
Virtualization
Window Managers
Web
OUISRC/muro — A new Forum use rust, rocket, diesel, postgresql, and responsive design
Development tools
Clippy 406 97 [clippy ] — Rust lints
clog-tool/clog-cli 208 13 — generates a changelog from git metadata (conventional changelog )
dan-t/rusty-tags 160 16 — create ctags/etags for a cargo project and all of its dependencies
frewsxcv/crate-deps 15 1 — generates images of dependency graphs for crates hosted on crates.io
git-journal 176 3 — The Git Commit Message and Changelog Generation Framework
killercup/rustfix 99 5 — automatically applies the suggestions made by rustc
just 359 27 — A handy command runner for project-specific tasks
Module Linker — Extension that adds
links to references in mod
, use
and extern crate
statements at GitHub.
Racer 98 10 — code completion for Rust
rustfmt 1k 278 — a Rust code formatter
Rustup 1k 270 — the Rust toolchain installer
Rust Language Server 677 92 — a server that runs in the background, providing IDEs, editors, and other tools with information about Rust programs
artifact 208 23 — the design doc tool made for developers
semantic-rs 101 4 — automatic crate publishing
Build system
Cargo — the Rust package manager
CMake
Webpack
Debugging
GDB
rust-gdb 30k 6k
gdbgui 5k 250 — Browser based frontend for gdb to debug C, C++, Rust, and go.
LLDB
rr
rr — rr is a lightweight tool for recording and replaying execution of applications
Deployment
Docker
Google App Engine
Heroku
Embedded
Rust Embedded
Cross compiling
japaric/rust-cross 556 31 — everything you need to know about cross compiling Rust programs
japaric/xargo 670 60 — effortless cross compilation of Rust programs to custom bare-metal targets like ARM Cortex-M
Raspberry Pi
FFI
See also Foreign Function Interface , The Rust FFI Omnibus (a collection of examples of using code written in Rust from other languages) and FFI examples written in Rust 210 29 .
C
C++
Erlang
Haskell
Java
Lua
mruby
Node.js
Objective-C
Perl
Python
getsentry/milksnake 100 1 - extension for python setuptools that allows you to distribute dynamic linked libraries in Python wheels in the most portable way imaginable.
dgrunwald/rust-cpython 497 47 — Python bindings
PyO3/PyO3 21 2 — Rust bindings for the Python interpreter
R
Ruby
IDEs
See also Are we (I)DE yet? and Rust and IDEs .
Pattern Recognition
sfikas/rusteval — A tool used to evaluate the output of retrieval algorithms
Profiling
Static Analysis
[assert , static ]
Testing
[testing ]
Libraries
Astronomy
[astronomy ]
Asynchronous
zonyitoo/coio-rs 356 33 — a coroutine I/O library with a working-stealing scheduler
dpc/mioco 590 47 — Scalable, coroutine-based, asynchronous IO handling library
rust-lang-nursery/futures-rs 7 3 — Zero-cost futures in Rust
carllerche/mio 3k 441 — MIO is a lightweight IO library for Rust with a focus on adding as little overhead as possible over the OS abstractions
Audio
[audio ]
Authentication
Bioinformatics
Rust-Bio — bioinformatics libraries in Rust.
Caching
Concurrency
Cloud
Command-line
Argument parsing
Line editor
Pipeline
Progress
Prompt
Style
TUI
Compression
Brotli
bzip2
gzip
carols10cents/zopfli 44 10 — implementation of the Zopfli 2k 196 compression algorithm for higher quality deflate or zlib compression
miniz
snappy
tar
zip
Computation
Configuration
mehcode/config-rs 133 13 [config ] — Layered configuration system for Rust applications (with strong support for 12-factor applications).
Cryptography
[crypto , cryptography ]
Database
[database ]
Data processing
Data structures
Data Visualization
Date and time
[date , time ]
Distributed Systems
Antimony
Apache Kafka
Beanstalkd
HDFS
Email
[email , imap , smtp ]
Encoding
[encoding ]
ASN.1
Bencode
Binary
BSON
Byte swapping
Cap'n Proto
CBOR
Character Encoding
CRC
CSV
HTML
JSON
Jsonnet
MsgPack
PEM
ProtocolBuffers
RON (Rusty Object Notation)
Tnetstring
TOML
XML
YAML
Filesystem
[filesystem ]
Operations
vitiral/path_abs — Absolute serializable path types and associated methods.
10 3 — expanding opportunities standard library std::fs and std::io
Temporary Files
Game development
See also Are we game yet?
Allegro
Challonge
Corange
Entity-Component Systems (ECS)
Game Engines
SDL [sdl ]
SFML
Voxlap
Geospatial
[geo , gis ]
Graphics
[graphics ]
Graph processing
GUI
[gui ]
Image processing
Language specification
shnewto/bnf — A library for parsing Backus–Naur form context-free grammars.
Logging
[log ]
Machine learning
[machine learning ]
See also About Rust’s Machine Learning Community .
macro
cute
mattgathu/cute 73 1 - Macro for Python-esque list comprehensions in Rust.
hado
ludat/hado-rs - A little macro for writing haskell-like do expressions without too much ceremony
Markup language
Mobile
Geal/rust_on_mobile 35 1
Android
iOS
TimNN/cargo-lipo 32 2 — a cargo lipo subcommand which automatically creates a universal library for use with your iOS application.
vhbit/ObjCrust 40 6 — using Rust to create an iOS static library
Pebble
andars/pebble.rs — a crate that allows Rust to be used to develop Pebble applications.
Network programming
FTP
IPNetwork
Low level
libpnet/libpnet 965 209 — a cross-platform, low level networking
tokio-rs/tokio 1k 44 — a network application framework for rapid development and highly scalable production deployments of clients and servers.
dylanmckay/protocol 2 1 — Custom TCP/UDP protocol definitions
actix/actix 144 19 — Actor library for Rust
NanoMsg
NNTP
POP3
SSH
Stomp
uTP
ZeroMQ
Parser
Platform specific
Scripting
[scripting ]
PistonDevelopers/dyon 402 25 — A rusty dynamically typed scripting language
gluon-lang/gluon 367 36 — A small, statically-typed, functional programming language
murarth/ketos 204 11 — A Lisp dialect functional programming language serving as a scripting and extension language for rust
jonathandturner/rhai 129 10 — A tiny and fast embedded scripting language resembling a combination of JS and Rust
Template engine
Handlebars
HTML
Mustache
tailhook/marafet — Compiler for Jade-like template language to cito.js-based virtual dom
Text processing
Text search
Virtualization
Web programming
See also Are we web yet? and Rust web framework comparison 440 30 .