A curated list of Rust code and resources.
If you want to contribute, please read this.
- Applications
- Development tools
- Libraries
- Artificial Intelligence
- Astronomy
- Asynchronous
- Audio
- Authentication
- Automotive
- Bioinformatics
- Caching
- Cloud
- Command-line
- Compression
- Computation
- Concurrency
- Configuration
- Cryptography
- Database
- Data processing
- Data structures
- Data visualization
- Date and time
- Distributed systems
- Encoding
- Filesystem
- Game development
- Geospatial
- Graphics
- Graph processing
- GUI
- Image processing
- Industrial automation
- Language specification
- Logging
- Macro
- Markup language
- Mobile
- Network programming
- Parsing
- Peripherals
- Platform specific
- Scripting
- Template engine
- Text processing
- Text search
- Virtualization
- Web programming
- Registries
- Resources
- License
See also Rust — Production(organizations running Rust in production).
15847
alacritty — A cross-platform, GPU enhanced terminal emulator13934
Servo — A prototype web browser engine1907
habitat — An tool created by Chef to build, deploy, and manage applications.1841
notty — A new kind of terminal1649
cloudflare/boringtun — A Userspace WireGuard VPN Implementation533
Fractalide — Simple Rust Microservices392
jedisct1/flowgger — A fast, simple and lightweight data collector324
fcsonline/drill — A HTTP load testing application inspired by Ansible syntax305
linkerd/linkerd2-proxy — Ultralight service mesh for Kubernetes.303
ivanceras/diwata — A database administration tool for postgresql124
Factotum — A system to programmatically run data pipelines87
Weld — Full fake REST API generator76
Herd — an experimental HTTP load testing application59
nicohman/eidolon — A steam and drm-free game registry and launcher for linux and macosx55
andschwa/rust-genetic-algorithm — A genetic algorithm for academic benchmark problems35
asm-cli-rust — interative assembly shell written in rust.31
kbknapp/docli — A command line utility for managing DigitalOcean infrastructure23
intecture/api — an API-driven server management and configuration tool16
darrint/device-blocker — Limit screen time to children's various mobile devices by blocking internet access on the family Wifi router.16
Sandstorm Collections App5
dlecan/generic-dns-update — A tool to update DNS zonefiles with your IP address3
AnderEnder/s3find-rs — A command line utility to walk an Amazon S3 hierarchy, an analog of find for Amazon S30
limonite — static blog/website generator0
Pijul — A patch-based distributed version control system0
rsign — A simple command-line tool used to generate/sign/verify digital signatures designed to be compatible with Minisign0
MaidSafe — A decentralized platform.0
mdBook — A command line utility to create books from markdown files0
trust-dns — A DNS-server
13
indiscipline/zrtstr — A command line utility for checking if stereo wav files are faux-stereo (i.e. have identical channels) and converting such files to mono.
5380
Parity-Ethereum — Fast, light, and robust Ethereum client4055
Grin — Evolution of the MimbleWimble protocol1053
Substrate — Generic modular blockchain template written in Rust500
Parity-Bitcoin — The Parity Bitcoin client388
Nervos CKB — Nervos CKB is a public permissionless blockchain, the common knowledge layer of Nervos network.352
Polkadot — Heterogeneous multi‑chain technology with pooled security260
Parity-Bridge — Bridge between any two ethereum-based networks175
nearprotocol/nearcore — decentralized smart-contract platform for low-end mobile devices.168
rust-cardano — Rust implementation of Cardano primitives, helpers, and related applications81
Parity-Zcash — Rust implementation of the Zcash protocol63
ChainX — Fully Decentralized Interchain Crypto Asset Management on Polkadot.52
ethaddrgen — Custom Ethereum vanity address generator made in Rust40
cardano-cli — Cardano Command Line Interface (CLI)25
coinbase-pro-rs — Coinbase pro client in Rust, supports sync/async/websocket8
Bitcoin Satoshi's Vision — A Rust library for working with Bitcoin SV .6
Joystream — A user governed video platform.5
hdwallet — BIP-32 HD wallet related key derivation utilities.0
wagu — Generate a wallet for any cryptocurrency0
rbtc — Convert BTC to any currency and vice-versa.
5019
tikv — A distributed KV database in Rust1198
seppo0010/rsedis — A Redis reimplementation in Rust1091
PumpkinDB — an event sourcing database engine86
ParityDB — Fast and reliable database, optimised for read operation0
indradb — Rust based graph database0
noria — Dynamically changing, partially-stateful data-flow for web application backends
See also crates matching keyword 'emulator'.
- Commodore 64
132
kondrak/rust64 —
- Gameboy
395
Gekkio/mooneye-gb —93
mvdnes/rboy —13
NivenT/RGB —
- NES
605
pcwalton/sprocketnes —501
koute/pinky —32
iamsix/oxidenes —
- Playstation
430
simias/rustation —
- ZX Spectrum
39
pacmancoder/rustzx —
- Virtual Boy
192
emu-rs/rustual-boy —
- Emulator Development tools
- SNES
5
ioncodes/snesutilities — ROM analyser/extractor
- SNES
See also Games Made With Piston.
5195
citybound — The city sim you deserve1766
cristicbz/rust-doom — A renderer for Doom, may progress to being a playable game486
ozkriff/zemeroth — A small 2D turn-based hexagonal strategy game287
Zone of Control — A turn-based hexagonal strategy game222
rsaarelm/magog — A roguelike game in Rust158
garkimasera/rusted-ruins — Extensible open world rogue like game with pixel art103
swatteau/sokoban-rs — A Sokoban implementation102
rhex — hexagonal ascii roguelike76
lifthrasiir/angolmois-rust — A minimalistic music video game which supports the BMS format21
Thinkofname/rust-quake — Quake map renderer in Rust9
aleshaleksey/TGWM — An RPG with turned-based mechanics (work in progress)0
Veloren — An open-world, open-source multiplayer voxel RPG.
912
ivanceras/svgbob — converts ASCII diagrams into SVG graphics871
RazrFalcon/svgcleaner — tidies SVG graphics324
Twinklebear/tray_rust — A ray tracer101
Limeth/euclider — A real-time 4D CPU ray tracer- Image processing:
13
spejss/Image-Processing-CLI-in-Rust — CLI for processing images, generating histograms.
80
locka99/opcua — A pure rust OPC UA library.52
slowtec/tokio-modbus — A tokio-based modbus library.4
BiancoRoyal/modbus-iiot-rust — A pure rust modbus library with no or less dependencies.
See also A comparison of operating systems written in Rust.
1934
nebulet/nebulet — A microkernel that implements a WebAssembly "usermode" that runs in Ring 0.1269
tock/tock — A secure embedded operating system for Cortex-M based microcontrollers331
thepowersgang/rust_os —0
redox-os/redox —
0
eureka — A CLI tool to input and store your ideas without leaving the terminal
325
kpcyrd/sn0int — A semi-automatic OSINT framework and package manager231
kpcyrd/sniffglue — A secure multithreaded packet sniffer162
kpcyrd/badtouch — A scriptable network authentication cracker124
Gymmasssorla/anevicon — The most powerful UDP-based load generator, written in Rust118
kpcyrd/rshijack — A TCP connection hijacker, rust rewrite of shijack8
arvancloud/libinjection-rs — Rust bindings for libinjection
13419
sharkdp/bat — A cat(1) clone with wings.9334
sharkdp/fd — A simple, fast and user-friendly alternative to find.6287
ogham/exa — A replacement for 'ls'4808
uutils/coreutils — A cross-platform Rust rewrite of the GNU coreutils1969
XAMPPRocky/tokei — counts the lines of code1232
Peltoche/lsd — An ls with a lot of pretty colors and awesome icons1221
m4b/bingrep — Greps through binaries from various OSs and architectures, and colors them.1084
mmstick/parallel — Reimplementation of GNU Parallel905
lotabout/skim — A fuzzy finder in pure rust869
watchexec — Executes commands in response to file modifications725
redox-os/ion — Next-generation system shell562
mmstick/systemd-manager — A systemd service manager written in Rust using GTK-rs.509
mitnk/cicada — A bash-like Unix shell167
mmstick/fontfinder — GTK3 application for previewing and installing Google's fonts118
mmstick/tv-renamer — A tv series renaming application with an optional GTK3 frontend.117
lotabout/rargs [rargs] — xargs + awk with pattern matching support117
pop-os/popsicle — GTK3 & CLI utility for flashing multiple USB devices in parallel106
ddh — Fast duplicate file finder89
cristianoliveira/funzzy — A configurable filesystem watcher inspired by entr89
k0pernicus/zou — A download accelerator80
buster/rrun — A command launcher for Linux, similar to gmrun68
sitkevij/hex — A colorized hexdump terminal utility.62
mmstick/concurr — Alternative to GNU Parallel w/ a client-server architecture46
pop-os/system76-power — Linux power management daemon (DBus-interface) with CLI tool.33
brocode/fblog — Small command-line JSON Log viewer21
Ralvke/logram — Push log files' updates to Telegram16
pop-os/debrep — APT repository tool for building and managing an APT repo0
fselect — Find files with SQL-like queries
16020
xi-editor — A modern editor with a backend written in Rust.8747
xray — An experimental next-generation Electron-based text editor.3330
Remacs — A community-driven port of Emacs to Rust.1233
gchp/iota — A simple text editor429
mathall/rim — Vim-like text editor written in Rust
199
vishaltelangre/ff — Find files (ff) by name!82
TankerHQ/ruplacer — Find and replace text in source files55
whitfin/runiq — an efficient way to filter duplicate lines from unsorted input.19
whitfin/bytelines — Read input lines as byte slices for high efficiency.5
lavifb/todo_r — Find all your TODO notes with one command!0
ripgrep — combines the usability of The Silver Searcher with the raw speed of grep0
sd — Intuitive find & replace CLI0
xsv — A fast CSV command line tool (slicing, indexing, selecting, searching, sampling, etc.)
300
myfreeweb/freepass — The free password manager for power users.45
evansmurithi/cloak — A Command Line OTP (One Time Password) Authenticator application.44
yaa110/rubigo — Golang dependency tool and package manager, written in Rust39
whitfin/s3-meta — A command line tool to gather metadata about your Amazon S3 buckets.30
fcsonline/tmux-thumbs — A lightning fast version of tmux-fingers written in Rust, copy/pasting tmux like vimium/vimperator.24
brycx/checkpwn — A Have I Been Pwned (HIBP) command-line utility tool that lets you easily check for compromised accounts and passwords.12
whitfin/s3-concat — A command line tool to concatenate Amazon S3 files remotely using flexible patterns.8
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!8
arthrp/quick-skeleton — Project scaffolding tool, similar to Yeoman and Slush.4
aleshaleksey/AZDice — A dice roll success distribution generator for tabletop homebrewers.1
arthrp/consoletimer - Simple timer for your terminal.
11
yuvadm/slingr — A simple CLI for streaming media files over a local network to UPnP media renderers
8117
firecracker-microvm/firecracker — A lightweight virtual machine for container workload Firecracker Microvm1573
tailhook/vagga — A containerization tool without daemons850
oracle/railcar — Docker-like container OCI runtime implementation in Rust
1941
way-cooler/way-cooler — A customizable Wayland compositor (window manager)
964
Plume-org/Plume — ActivityPub federating blogging application61
rustlang-cn/ruster — online community in rust for rust community
341
svenstaro/miniserve — A small, self-contained cross-platform CLI tool that allows you to just grab the binary and serve some file(s) via HTTP188
TheWaWaR/simple-http-server — simple static http server89
thecoshman/http — Host These Things Please — A basic http server for hosting a folder fast and simply
2792
Racer — code completion for Rust2473
Rustup — the Rust toolchain installer2263
Rust Language Server — A server that runs in the background, providing IDEs, editors, and other tools with information about Rust programs2191
rustfmt — A Rust code formatter932
just — A handy command runner for project-specific tasks510
clog-tool/clog-cli — generates a changelog from git metadata (conventional changelog)436
artifact — the design doc tool made for developers408
rust-lang-nursery/rustfix — automatically applies the suggestions made by rustc314
git-journal — The Git Commit Message and Changelog Generation Framework245
dan-t/rusty-tags — create ctags/etags for a cargo project and all of its dependencies128
semantic-rs — automatic crate publishing85
fw — workspace productivity booster39
ptags — A parallel universal-ctags wrapper for git repository19
frewsxcv/crate-deps — generates images of dependency graphs for crates hosted on crates.io15
tinyrick a basic task dependency tool emphasizing Rust functions over raw shell commands.0
Module Linker — Extension that adds<a>
links to references inmod
,use
andextern crate
statements at GitHub.0
clippy — Rust lints
336
dtolnay/cargo-expand — Expand macros in your source code2
liuchong/cargo-x — A very simple third-party cargo subcommand to execute a custom command0
cargo-graph — updated fork ofcargo-dot
with additional features. Unmaintained, seecargo-deps
0
cargo-cache — inspect/manage/clean your cargo cache (~/.cargo/
/${CARGO_HOME}
), print sizes etc0
cargo-check — A wrapper aroundcargo rustc -- -Zno-trans
which can be helpful for running a faster compile if you only need correctness checks0
cargo-count — lists source code counts and details about cargo projects, including unsafe statistics0
cargo-deb — Generates binary Debian packages0
cargo-deps — build dependency graphs of Rust projects0
cargo-do — run multiple cargo commands in a row0
cargo-ebuild — cargo extension that can generate ebuilds using the in-tree eclasses0
cargo-edit — allows you to add and list dependencies by reading/writing to your Cargo.toml file from the command line0
cargo-find deprecated — Find crates from command line0
cargo-bitbake — A cargo extension that can generate BitBake recipes utilizing the classes from meta-rust0
cargo-info — queries crates.io for crates details from command line0
cargo-make — Rust task runner and build tool.0
cargo-modules — A cargo plugin for showing a tree-like overview of a crate's modules.0
cargo-multi — runs specified cargo command on multiple crates0
cargo-outdated — displays when newer versions of Rust dependencies are available, or out of date0
cargo-release — tool for releasing git-managed cargo project, build, tag, publish, doc and push0
cargo-script — lets people quickly and easily run Rust "scripts" which can make use of Cargo's package ecosystem0
cargo-testify — watches files changes, runs tests and notifies about the result with friendly OS notification0
cargo-update — cargo subcommand for checking and applying updates to installed executables0
cargo-watch — utility for cargo to compile projects when sources change0
cargo-benchcmp — A utility to compare Rust micro-benchmarks0
Cargo — the Rust package manager- CMake
78
SiegeLord/RustCMake — an example project showing usage of CMake with Rust40
Devolutions/CMakeRust — useful for integrating a Rust library into a CMake project
- Github actions
21
icepuma/rust-github-actions — rust github actions
- Webpack
33
Ralvke/rust-loader — Webpack Rust loader (wasm)
- GDB
- LLDB
35829
lldb_batchmode.py — allows to use LLDB in a way similar to GDB's batch mode.326
CodeLLDB — A LLDB extension for Visual Studio Code.
- rr
4027
rr — rr is a lightweight tool for recording and replaying execution of applications
- Docker
509
emk/rust-musl-builder — Docker images for compiling static Rust binaries using musl-libc and musl-gcc, with static versions of useful C libraries106
rust-lang-nursery/docker-rust — the official Rust Docker image75
kpcyrd/mini-docker-rust — An example project for very small rust docker images60
messense/rust-musl-cross — Docker images for compiling static Rust binaries using musl-cross36
liuchong/docker-rustup — A multiple version (with musl tools) Rust Docker image
- Google App Engine
30
DenisKolodin/rust-app-engine — App Engine Rust boilerplate
- Heroku
234
emk/heroku-buildpack-rust — A buildpack for Rust applications on Heroku
- Cross compiling
1169
japaric/rust-cross — everything you need to know about cross compiling Rust programs599
japaric/xargo — effortless cross compilation of Rust programs to custom bare-metal targets like ARM Cortex-M
- Raspberry Pi
273
Ogeon/rust-on-raspberry-pi — instructions for how to cross compile Rust projects for the Raspberry Pi .
- Arduino
228
avr-rust/ruduino ^`^t Reusable components for the Arduino Uno.
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.
- C
399
rlhunt/cbindgen — generates C header files from Rust source files. Used in Gecko for WebRender190
Sean1708/rusty-cheddar — generates C header files from Rust source files
- C++
1096
rust-lang/rust-bindgen — A Rust bindings generator
- Erlang
1271
rusterlium/rustler — safe Rust bridge for creating Erlang NIF functions
- Haskell
199
mgattozzi/curryrs — Bridge the gap between Haskell and Rust17
mgattozzi/haskellrs — Rust in Haskell FFI Example0
mgattozzi/rushs — Haskell in Rust FFI Example
- Java
233
drrb/java-rust-example — use Rust from Java50
bennettanderson/rjni — use Java from Rust9
rawrasaur/rust-jdbc — uses JDBC from Rust0
jni — use Rust from Java0
jni-sys — Rust definitions corresponding to jni.h0
rucaja — use Java from Rust0
j4rs — use Java from RustLua
411
tomaka/hlua — Rust library to interface with Lua110
jcmoyer/rust-lua53 — Lua 5.3 bindings for Rust107
kballard/rust-lua — Safe Rust bindings to Lua 5.130
tickbh/td_rlua — Zero-cost high-level lua 5.3 wrapper for Rust
- mruby
185
anima-engine/mrusty — mruby safe bindings for Rust
- Node.js
3336
neon-bindings/neon — use Rust from Node.js
- Objective-C
170
SSheldon/rust-objc — Objective-C Runtime bindings and wrapper for Rust
- Perl
33
vickenty/perl-xs — Create Perl XS modules using Rust2
vickenty/mi-rust — Adds support to M::I for building modules with Cargo
- Python
1321
PyO3/PyO3 — Rust bindings for the Python interpreter1003
dgrunwald/rust-cpython — Python bindings531
getsentry/milksnake — extension for python setuptools that allows you to distribute dynamic linked libraries in Python wheels in the most portable way imaginable.
- R
140
rustr/rustr — use Rust from R, and use R in Rust
- Ruby
1820
tildeio/helix — write Ruby classes in Rust750
d-unseductable/ruru — native Ruby extensions written in Rust235
danielpclark/rutie — native Ruby extensions written in Rust and vice versa
- Web Assembly
2107
rustwasm/wasm-bindgen — A project for facilitating high-level interactions between wasm modules and JS.1777
rustwasm/wasm-pack — 📦 ✨ pack up the wasm and publish it to npm!
See also Are we (I)DE yet? and Rust Tools.
48563
Atom4656
Kakoune2740
sublimehq/packages — native Sublime support (already installed)2358
intellij-rust/intellij-rust —2073
autozimu/LanguageClient-neovim — LSP client. Implemented in Rust and supports rls out of the box.1475
rust.vim — provides file detection, syntax highlighting, formatting, Syntastic integration, and more.
900
SolidOak — A simple IDE for Rust, based on GTK+ and Neovim452
vim-racer — allows vim to use Racer for Rust code completion and navigation.449
rust-mode — Rust Major Mode427
rust-lang/rust-enhanced — official Rust package351
RustDT —298
emacs-racer — Autocompletion (see also company and auto-complete)
150
Ride —135
ul/kak-lsp — LSP client. Implemented in Rust and supports rls out of the box.116
zargony/atom-language-rust107
Eclipse Corrosion
96
Vim — the ubiquitous text editor83
flycheck-rust — Rust support for Flycheck58
lsp-rust — Add rls support to lsp-mode40
drrb/rust-netbeans26
intellij-rust/intellij-toml — basic Toml support26
vim-cargo — command bindings to quickly run cargo stuff from vim.
0
Emacs0
Sublime Text0
Eclipse0
IntelliJ0
gnome-builder native support for rust and cargo since Version 3.22.20
gitpod.io — Online IDE with full Rust support based on Rust Language Server0
NetBeans- Visual Studio
2263
rust-lang/rls-vscode — Rust support for Visual Studio Code655
PistonDevelopers/VisualRust — A Visual Studio extension for Rust442
KalitaAlexey/vscode-rust — A fork of RustyCode372
saviorisdead/RustyCode (unmaintained)326
CodeLLDB — A LLDB extension78
dgriffen/rls-vs2017 — Rust support for Visual Studio 2017 Preview44
crates — crates is an extension for crates.io dependencies.
0
Visual Studio Code
15
sfikas/rusteval — A tool used to evaluate the output of retrieval algorithms
2724
sharkdp/hyperfine — A command-line benchmarking tool49
ellisonch/rust-stopwatch — A stopwatch library15
performancecopilot/hornet — A Performance Co-Pilot memory-mapped values instrumentation library- FlameGraphs
379
TyOverby/flame —101
mrhooray/torch — generates FlameGraphs based on DWARF Debug Info
99
deps.rs — Detect outdated or insecure dependencies0
docs.rs — Automatic documentation generation of crates
0
static_assertions — Compile-time assertions to ensure that invariants are met
[testing]
766
trust — A Travis CI and AppVeyor template to test your Rust crate on 5 architectures and publish binary releases of it for Linux, macOS and Windows753
rust-fuzz/afl.rs — A Rust fuzzer, using AFL35
AlKass/polish — Mini Testing/Test-Driven Framework0
quickcheck — A Rust implementation of QuickCheck0
mockito — HTTP mocking0
speculate — An RSpec inspired minimal testing framework for Rust0
mutagen — A source-level mutation testing framework (nightly only)0
tarpaulin — A code coverage tool designed for Rust0
proptest — property testing framework inspired by the Hypothesis framework for Python
1934
jameysharp/corrode — A C to Rust translator written in Haskell.560
immunant/c2rust — C to Rust translator and cross checker built atop Clang/LLVM.
51
m-decoster/RsGenetic — Genetic Algorithm library in Rust. In maintenance mode.41
willi-kappler/darwin-rs — This library allows you to write evolutionary algorithms (EA) using the Rust programming language. Written by Willi Kappler, License: MIT — Version 0.4 (2017.06.26).35
Martin1887/oxigen — Fast, parallel, extensible and adaptable genetic algorithm library. A example using this library solves the N Queens problem for N = 255 in only few seconds and using less than 1 MB of RAM.22
innoave/genevo — Execute genetic algorithm (GA) simulations in a customizable and extensible way.7
yurytsoy/revonet — Rust implementation of real-coded GA for solving optimization problems and training of neural networks.5
mneumann/evo-rs — Evolutionary Algorithm Library for Rust. Without changes for 3 years.
See also About Rust’s Machine Learning Community.
5404
autumnai/leaf — Open Machine Intelligence framework.. Abandoned project. The most updated fork is spearow/juice.
1676
tensorflow/rust — Rust language bindings for TensorFlow.838
AtheMathmo/rusty-machine — Machine learning library for Rust345
maciejkula/rustlearn — Machine learning crate for Rust.197
LaurentMazare/tch-rs — Rust language bindings for PyTorch.6
avinashshenoy97/RusticSOM — Rust library for Self Organising Maps (SOM).
86
saurvs/astro-rust — astronomy for Rust14
flosse/rust-sun — A rust port of the JS library suncalc0
fitsio — fits interface library wrapping cfitsio
2984
mio — MIO is a lightweight IO library for Rust with a focus on adding as little overhead as possible over the OS abstractions2583
rust-lang-nursery/futures-rs — Zero-cost futures in Rust601
Xudong-Huang/may — rust stackful coroutine library415
zonyitoo/coio-rs — A coroutine I/O library with a working-stealing scheduler113
dpc/mioco — Scalable, coroutine-based, asynchronous IO handling library41
TeaEntityLab/fpRust — Monad/MonadIO, Handler, Coroutine/doNotation, Functional Programming features for Rust
[audio]
295
tomaka/rodio — A Rust audio playback library211
RustAudio/rust-portaudio — PortAudio bindings
67
jhasse/ears — A simple library to play Sounds and Musics, on top of OpenAL and libsndfile61
jpernst/alto — OpenAL 1.1 bindings45
musitdev/portmidi-rs — PortMidi bindings32
GuillaumeGomez/rust-fmod — FMOD bindings0
hound — A WAV encoding and decoding library0
RustAudio
273
Keats/jsonwebtoken — JSON Web Token lib in rust
13
mbr/socketcan [socketcan] — Linux SocketCAN library8
oefd/tokio-socketcan [tokio-socketcan]] — Linux SocketCAN support for tokio based on the socketcan crate5
marcelbuesing/can-dbc [can-dbc] — A parser for the DBC format4
JulianSchmid/dlt_parse — Rust DLT (Diagnostic Log and Trace) packet parser4
JulianSchmid/someip_parse [someip_parse] — A library for parsing the SOME/IP network protocol (without payload interpretation)2
Sensirion/lin-bus [lin-bus] — LIN bus driver traits and protocol implementation1
LibreTuner/tuneutils [tuneutils] — Utilities for interfacing with, diagnosing, and tuning car1
marcelbuesing/tokio-socketcan-bcm [tokio-socketcan-bcm] — Linux SocketCAN BCM support for tokio0
canparse — A CAN signal and definition parser0
j2534 — J2534 PassThru bindings
0
Rust-Bio — bioinformatics libraries in Rust.
149
jaemk/cached — Simple function caching/memoization33
aisk/rust-memcache — Memcached client library15
jaysonsantos/bmemcached-rs — Memcached library written in pure rust
2822
Rayon – A data parallelism library for Rust1834
crossbeam-rs/crossbeam – Support for parallelism and low-level concurrency in Rust415
zonyitoo/coio-rs – Coroutine I/O for Rust346
rustcc/coroutine-rs – Coroutine Library in Rust26
orium/archery [archery] — Library to abstract fromRc
/Arc
pointer types.19
pop-os/bus-writer — Generic single-reader, multi-writer2
aymanmadkour/glock – Granular locking crate for Rust.
- AWS [aws]
935
rusoto/rusoto —
- Argument parsing
2743
clap-rs [clap] — A simple to use, full featured command-line argument parser894
TeXitoi/structopt [structopt] — parse command line argument by defining a struct641
docopt/docopt.rs [docopt] — A Rust implementation of DocOpt389
killercup/quicli [quicli] — quickly build cool CLI apps in Rust
- Human-centered design
518
rust-cli/human-panic [human-panic] — panic messages for humans
- Line editor
331
kkawakam/rustyline [rustyline] — readline implementation in Rust105
murarth/linefeed [linefeed] — Configurable, extensible, interactive line reader65
MovingtoMars/liner [liner] — A library offering readline-like functionality22
srijs/rust-copperline [copperline] — pure-Rust command line editing library
- Pipeline
211
oconnor663/duct.rs [duct] — A builder for subprocess pipelines and IO redirection88
hniksic/rust-subprocess [subprocess] — facilities for interaction with external pipelines35
philippkeller/rexpect [rexpect] — automate interactive applications such as ssh, ftp, passwd, etc0
imp/pager-rs [pager] — pipe your output through an external pager
- Progress
1031
mitsuhiko/indicatif [indicatif] — indicate progress to users231
a8m/pb [pbr] — console progress bar for Rust212
FGRibreau/spinners [spinners] — 60+ elegant terminal spinners
- Prompt
26
hashmismatch/terminal_cli.rs [terminal_cli] — build an interactive command prompt
- Style
199
ogham/rust-ansi-term [ansi_term] — control colours and formatting on ANSI terminals59
SergioBenitez/yansi [yansi] — A dead simple ANSI terminal color painting library53
LukasKalbertodt/term-painter [term-painter] — cross-platform styled terminal output13
vitiral/termstyle [termstyle] — build (and test) formatted and styled command line applications
- TUI
1186
fdehau/tui-rs [tui] — A TUI library inspired by blessed-contrib and termui1102
gyscos/Cursive [cursive] — build rich TUI applications993
ticki/termion [termion] — bindless library for controlling terminals/TTY290
TimonPost/crossterm [crossterm] — crossplatform terminal library23
ogham/rust-term-grid [term_grid] — Rust library for putting things in a grid- BearLibTerminal
17
cfyzium/bearlibterminal [bear-lib-terminal] — BearLibTerminal bindings
- ncurses
447
jeaye/ncurses-rs [ncurses] — ncurses bindings181
ihalila/pancurses [pancurses] — curses library, supports linux and windows
- Termbox
385
gchp/rustbox [rustbox] — bindings to Termbox
2498
Brotli281
dropbox/rust-brotli — Brotli decompressor in Rust that optionally avoids the stdlib52
ende76/brotli-rs — implementation of Brotli compression
- bzip2
25
alexcrichton/bzip2-rs — libbz2 bindings
- gzip
63
carols10cents/zopfli — implementation of the Zopfli compression algorithm for higher quality deflate or zlib compression
- miniz
235
alexcrichton/flate2-rs — miniz bindings
- snappy
15
JeffBelgum/rust-snappy — snappy bindings
- tar
184
alexcrichton/tar-rs — tar archive reading/writing in Rust
- zip
161
mvdnes/zip-rs — read and write ZIP archives
1097
rustsim/nalgebra — low-dimensional linear algebra library492
BLAS [blas]67
mikkyang/rust-blas — BLAS bindings46
stainless-steel/lapack — LAPACK bindings
39
argmin-rs/argmin [argmin] — A pure Rust optimization library32
stainless-steel/blas — BLAS bindings27
fizyk20/rust-gmp — libgmp bindings6
noshu/lbfgsb-sys — Rust binding of fortran L-BFGS-B subroutine
4
GSL2
noshu/cg-sys — Rust binding of fortran CG+ subroutine
0
GMP0
GuillaumeGomez/rust-GSL — GSL bindings
0
LAPACK0
L-BFGS-B0
Conjugate Gradient- Parallel
421
autumnai/collenchyma — An extensible, pluggable, backend-agnostic framework for parallel, high-performance computations on CUDA, OpenCL and common host CPU.348
arrayfire/arrayfire-rust — Arrayfire bindings156
luqmana/rust-opencl — OpenCL bindings
- Scirust
180
indigits/scirust — scientific computing library in Rust
- Statrs
135
boxtown/statrs — Robust statistical computation library in Rust
- Rustimization [rustimization]
30
noshu/rustimization — A rust optimization library which includes L-BFGS-B and Conjugate Gradient algorithm
438
mehcode/config-rs [config] — Layered configuration system for Rust applications (with strong support for 12-factor applications).14
Kixunil/configure_me [configure_me] — library for processing application configuration easily
1235
briansmith/ring — Safe, fast, small crypto using Rust and BoringSSL's cryptography primitives.925
ctz/rustls — A Rust implementation of TLS851
exonum/exonum [exonum] — extensible framework for blockchain projects848
DaGenix/rust-crypto — cryptographic algorithms in Rust487
sfackler/rust-openssl — OpenSSL bindings419
dnaq/sodiumoxide — libsodium bindings307
RustCrypto/hashes — Collection of cryptographic hash functions written in pure Rust169
briansmith/webpki — Web PKI TLS X.509 certificate validation in Rust.150
sfackler/rust-native-tls — Bindings for native TLS libraries126
libOctavo/octavo — Modular hash and crypto library in Rust120
klutzy/suruga — A Rust implementation of TLS 1.286
brycx/orion — This library aims to provide easy and usable crypto. 'Usable' meaning exposing high-level API's that are easy to use and hard to misuse.85
conradkdotcom/rooster [rooster] — Simple password manager to use in your terminal48
kornelski/rust-security-framework — Bindings for Security Framework (OSX native crypto)31
racum/rust-djangohashers — A Rust port of the password primitives used in the Django Project. It doesn't require Django, only hashes and validates passwords according to its style.30
doublify/libblockchain — A Blockchain implementation23
rustindia/mpw-rs — Pure Rust implementation of the Master Password password manager18
Fraunhofer-AISEC/rabe — Library providing several Attribute-Based Encryption (ABE) schemes9
steffengy/schannel-rs — Bindings for Schannel (Windows native TLS)5
RNCryptor/rncryptor-rs — Pure Rust implementation of the RNCryptor AES file format4
zebradil/rustotpony — CLI manager of one-time password generators aka Google Authenticator (TOTP)0
sequoia-pgp/sequoia — An OpenPGP implementation in Rust
[database]
-
486
sfackler/r2d2 — generic connection pool -
NoSQL [nosql]
7906
ArangoDB172
AlexPikalov/cdrs [cdrs] — native client written in Rust30
Rincon — An ArangoDB (NoSQL and Graph store) driver for Rust7
Metaswitch/cassandra-rs — bindings to the DataStax C/C++ client
0
Cassandra [cassandra, cql]- CouchDB [couchdb]
24
Sofa — an interface to CouchDB HTTP REST API for stable rust23
chill-rs/chill [couchdb] — A Rust client for the CouchDB REST API
- Elasticsearch [elasticsearch]
183
benashford/rs-es [rs-es] — A Rust client for the Elastic REST API5
elastic-rs/elastic-reqwest [elastic_reqwest] — A lightweight implementation of the Elasticsearch API based on Reqwest
- etcd
87
jimmycuadra/rust-etcd [etcd] — A client library for CoreOS's etcd.
- ForestDB
16167
InfluxDB29
driftluo/InfluxDBClient-rs — Synchronization interface9
panoptix-za/influxdb-rs — asynchronous interface7
vhbit/sherwood — ForestDB bindings
- LevelDB
76
skade/leveldb — LevelDB bindings
- LMDB [lmdb]
84
vhbit/lmdb-rs [lmdb-rs] — LMDB bindings
- MongoDB [mongodb]
342
mongodb-labs/mongo-rust-driver-prototype [mongodb] — MongoDB bindings
- Neo4j [cypher, neo4j]
- Redis [redis]
13651
RocksDB1065
mitsuhiko/redis-rs — Redis library in Rust
955
UnQLite412
rust-rocksdb/rust-rocksdb — RocksDB bindings
364
PickleDB80
bonifaido/rust-zookeeper [zookeeper] — A client library for Apache ZooKeeper.45
zitsen/unqlite.rs — UnQLite bindings25
seladb/pickledb-rs — a lightweight and simple key-value store, heavily inspired by Python's PickleDB.
0
ZooKeeper
-
SQL [sql]
- Microsoft SQL
114
steffengy/tiberius —
- MySql [mysql]
263
blackbeam/rust-mysql-simple [mysql] — A native MySql client123
AgilData/mysql-proxy-rs — A MySQL Proxy84
blackbeam/mysql_async [mysql_async] — asyncronous Rust Mysql driver based on Tokio.
- PostgreSql [postgres, postgresql]
1231
sfackler/rust-postgres [postgres] — A native PostgreSQL client
- Sqlite [sqlite]
482
jgallagher/rusqlite — Sqlite3 bindings
- Microsoft SQL
-
ORM [orm]
3888
diesel-rs/diesel — an ORM and Query builder for Rust61
ivanceras/rustorm — an ORM for Rust
1126
weld-project/weld — High-performance runtime for data analytics applications797
bluss/ndarray — N-dimensional array with array views, multidimensional slicing, and efficient operations94
kernelmachine/utah — Dataframe structure and operations in Rust
650
bluss/rust-itertools —345
orium/rpds [rpds] — Persistent data structures in Rust.157
fizyk20/generic-array – a hack to allow for arrays sized by typenums67
Nemo157/roaring-rs – Roaring Bitmaps in Rust37
danielpclark/array_tool — Array helpers for Rust. Some of the most common methods you would use on Arrays made available on Vectors. Polymorphic implementations for handling most of your use cases.21
xfix/enum-map [enum-map] — An optimized map implementation for enums using an array to store values.18
garro95/priority-queue[priority-queue] — A priority queue that implements priority changes.9
billyevans/tst [tst] — Ternary search tree collection7
whitfin/usher [usher] — Parameterized routing for generic resources in Rust.3
pop-os/progress-streams — Progress callbacks for types which implementdyn io::Read
ordyn io::Write
.0
contain-rs — Extension of Rust's std::collections
93
saresend/gust —
- Antimony
38
antimonyproject/antimony [antimony] — stream processing / distributed computation platform
- Apache Hadoop
13
whitfin/efflux — Easy Hadoop Streaming and MapReduce interfaces in Rust.
- Apache Kafka
340
spicavigo/kafka-rust —249
fede1024/rust-rdkafka [rdkafka] — librdkafka bindings
- Beanstalkd
36
schickling/rust-beanstalkd — Beanstalkd bindings
- HDFS
19
hyunsik/hdfs-rs — libhdfs bindings
332
lettre/lettre — an SMTP-library for Rust41
staktrace/mailparse [mailparse] — A library for parsing real-world email files37
GildedHonour/atarashii_imap — 新しい (atarashii/new) IMAP client in Rust. It supports plain and secure connections19
gsquire/sendgrid-rs — unofficial Rust library for SendGrid API
[encoding]
- ASN.1
53
alex/rust-asn1 — A Rust ASN.1 (DER) serializer
- Bencode
23
arjantop/rust-bencode — Bencode implementation in Rust
- Binary
555
TyOverby/bincode — A binary encoder/decoder in Rust313
m4b/goblin [goblin] — cross-platform, zero-copy, and endian-aware binary parsing31
arcnmx/nue — I/O and binary data encoding for Rust
- BSON
84
zonyitoo/bson-rs —
- Byte swapping
394
BurntSushi/byteorder — Supports big-endian, little-endian and native byte orders
- Cap'n Proto
739
capnproto/capnproto-rust —
- CBOR
0
serde_cbor — CBOR support for serde
- Character Encoding
184
lifthrasiir/rust-encoding —126
hsivonen/encoding_rs [encoding_rs] — A Gecko-oriented implementation of the Encoding Standard in Rust
- CRC
46
mrhooray/crc-rs —
- CSV
576
BurntSushi/rust-csv — A fast and flexible CSV reader and writer, with support for Serde14
frol/flatc-rust — FlatBuffers compiler (flatc) integration for Cargo build scripts
0
FlatBuffers- HAR
5
mandrean/har-rs — A HTTP Archive Format (HAR) serialization & deserialization library
- HTML
797
servo/html5ever — High-performance browser-grade HTML5 parser21
veddan/rust-htmlescape — encoding/decoding HTML entities
- JSON
935
serde-rs/json [serde_json] — JSON support for Serde framework508
pikkr/pikkr [pikkr] — JSON parser which picks up values directly without performing tokenization in Rust275
maciejhirsz/json-rust [json] — JSON implementation in Rust
- Jsonnet
- MsgPack
339
3Hren/msgpack-rust — A pure Rust low/high level MessagePack implementation
- PEM
8
jcreekmore/pem-rs [pem] — A Rust based way to parse and encode PEM-encoded data
- Postman Collection
2
mandrean/postman-collection-rs — A Postman Collection v1, v2 & v2.1 serialization & deserialization library
- ProtocolBuffers
932
stepancheg/rust-protobuf —610
danburkert/prost —
- RON (Rusty Object Notation)
- Tnetstring
- TOML
475
alexcrichton/toml-rs —
- XML
244
netvl/xml-rs — A streaming XML library217
tafia/quick-xml — High performance XML pull reader/writer108
shepmaster/sxd-document — An XML library in Rust73
Florob/RustyXML — an XML parser written in Rust61
shepmaster/sxd-xpath — An XPath library in Rust34
media-io/yaserde — Yet Another Serializer/Deserializer specialized for XML
- YAML
271
chyh1990/yaml-rust — The missing YAML 1.2 implementation for Rust.169
dtolnay/serde-yaml [serde_yaml] — YAML support for Serde framework19
kimhyunkang/libyaml-rust — libyaml bindings6
vitiral/stfu8 — Sorta Text Format in UTF-8
- Operations
53
webdesus/fs_extra — expanding opportunities standard library std::fs and std::io27
vitiral/path_abs — Absolute serializable path types and associated methods.6
pop-os/dbus-udisks2 -> UDisks2 DBus API4
pop-os/sys-mount — High level abstraction for themount
/umount2
system calls.
- Temporary Files
912
zboxfs/zbox [zbox] — Zero-details, privacy-focused embeddable file system.243
Stebalien/tempfile — temporary file library137
rust-lang-deprecated/tempdir — temporary directory library8
Stebalien/xattr [xattr] — list and manipulate unix extended file attributes
See also Are we game yet?
- Allegro
53
SiegeLord/RustAllegro — Allegro 5 bindings
- Challonge
0
vityafx/challonge-rs [challonge] — Client library for the Challonge REST API. Helps to organize tournaments.
- Corange
37
lucidscape/corange-rs — Corange bindings
- Entity-Component Systems (ECS)
1112
slide-rs/specs — Specs Parallel ECS
- Game Engines
2973
Amethyst — Data-oriented game engine1363
ggez — A lightweight game framework for making 2D games with minimum friction949
Rust-SDL2/rust-sdl2 — SDL2 bindings580
Kiss3D — A Keep It Simple, Stupid 3d graphics engine written with Rust357
Piston —252
Unrust — unrust — A pure rust based (webgl 2.0 / native) game engine165
brson/rust-sdl — SDL1 bindings44
Vulkust — Vulkust — A safe, highly multithreaded, Vulkan based game engine written with Rust.
0
SDL [sdl]- SFML
365
jeremyletang/rust-sfml — SFML bindings
- Tcod-rs
155
tomassedovic/tcod-rs — Libtcod bindings for Rust.
- Victorem
9
VictoremWinbringer/Victorem [Victorem] — Easy UDP Game Server and UDP Client framework for creating simple 2D and 3D online game prototype
- Voxlap
11
bbodi/rust-voxlap — Voxlap bindings
28
rust-reverse-geocoder — A fast, offline reverse geocoder in Rust, inspired by https://github.com/thampiman/reverse-geocoder6
DaveKram/coord_transforms [coord_transforms] — coordinate transformations (2-d, 3-d, and geospatial)3
vlopes11/geomorph [geomorph] — conversion between UTM, LatLon and MGRS coordinates0
Georust — geospatial tools and libraries written in Rust
[graphics]
2973
gfx-rs/gfx — A high-performance, bindless graphics API for Rust.- Font
444
redox-os/rusttype — A pure Rust alternative to libraries like FreeType
- OpenGL [opengl]
4915
glutin — Rust alternative to GLFW1791
glium/glium — safe OpenGL wrapper for the Rust language.580
Kiss3d — draw simple geometric figures and play with them with one-liners416
brendanzab/gl-rs —321
PistonDevelopers/glfw-rs —
498
Vulkan [vulkan]390
J-F-Liu/lopdf — PDF document manipulation189
fschutt/printpdf — PDF writing library55
kaj/rust-pdf —
10
kud1ing/tinkerpop-rs — an example how to use Apache TinkerPop from Rust
[gui]
-
2461
maps4print/azul — A free, functional, IMGUI-oriented GUI framework for rapid development of desktop applications written in Rust, supported by the Mozilla WebRender rendering engine. -
2142
PistonDevelopers/conrod — An easy-to-use, immediate-mode, 2D GUI library written entirely in Rust -
69
autopilot-rs/autopilot-rs — A simple, cross-platform GUI automation library for Rust. -
52
rise-ui — Simple component-based cross-Platform GUI Toolkit for developing beautiful and user-friendly interfaces. -
Cocoa
-
14841
ImGui -
12170
Nuklear -
8493
libui -
2306
Flutter1286
relm — Asynchronous, GTK+-based, GUI library, inspired by Elm910
gtk-rs/gtk — GTK+ bindings574
imgui-rs — Rust bindings for ImGui437
flutter-rs — Build flutter desktop app in dart & rust.412
cyndis/qmlrs — QtQuick bindings326
Kiss-ui — A simple UI framework built on IUP274
sciter-sdk/rust-sciter — Sciter bindings220
nuklear-rust — Rust bindings for Nuklear215
pcwalton/libui-rs — libui bindings. Abandoned project. The most updated fork is NoraCodes/libui-rs.
163
White-Oak/qml-rust — QML bindings.161
servo/core-foundation-rs —
-
58
saurvs/nfd-rs — nativefiledialog bindings -
41
Sciter30
kylewlacy/sorbet-cocoa —29
dcampbell24/iup-rust — IUP bindings27
kitech/qt.rs — Qt5 bindings12
clear-coat — Clear Coat is a Rust wrapper for the IUP GUI library0
Rust Qt Binding Generator — Binding generator hosted by KDE.0
rust-qt —
-
0
IUP -
0
Qt
1012
image-rs/image — Basic imaging processing functions and methods for converting to and from image formats171
twistedfall/opencv-rust — Rust bindings for OpenCV169
image-rs/imageproc — An image processing library, based on theimage
library.75
abonander/img_hash — Perceptual image hashing and comparison for equality and similarity.33
teovoinea/steganography [steganography] — A simple steganography library
50
shnewto/bnf — A library for parsing Backus–Naur form context-free grammars.
[log]
684
slog-rs/slog — Structured, composable logging for Rust536
rust-lang-nursery/log — Logging implementation for Rust234
sfackler/log4rs — highly configurable logging framework modeled after Java's Logback and log4j libraries
- cute
162
mattgathu/cute — Macro for Python-esque list comprehensions in Rust.
- hado
33
ludat/hado-rs — A little macro for writing haskell-like do expressions without too much ceremony
- CommonMark
655
raphlinus/pulldown-cmark — CommonMark parser in Rust
- Android
774
rust-windowing/android-rs-glue — glue between Rust and Android
- iOS
144
TimNN/cargo-lipo — A cargo lipo subcommand which automatically creates a universal library for use with your iOS application.40
vhbit/ObjCrust — using Rust to create an iOS static library
- Pebble
42
andars/pebble.rs — A crate that allows Rust to be used to develop Pebble applications.
- HTTP
13
pop-os/parallel-getter — Download a file with parallel GET requests to maximize bandwidth usage.12
pop-os/url-crawler — A configurable parallel web crawler, designed to crawl a website for content.4
pop-os/url-scraper — Scrape URLs from HTML pages
- FTP
73
mattnenterprise/rust-ftp — an FTP client for Rust
- IPNetwork
37
candrew/netsim — A Rust library for network simulation and testing32
achanda/ipnetwork — A library to work with IP networks in pure Rust
- JSON-RPC
7
vlopes11/futures-jsonrpc [futures-jsonrpc] — Futures implementation for JSON-RPC
- Low level
4634
tokio-rs/tokio — A network application framework for rapid development and highly scalable production deployments of clients and servers.2652
actix/actix — Actor library for Rust839
libpnet/libpnet — A cross-platform, low level networking51
dylanmckay/protocol — Custom TCP/UDP protocol definitions11
Gymmasssorla/sendmmsg — Transmit multiple messages using one system call in Rust
- NanoMsg
322
thehydroimpulse/nanomsg.rs — nanomsg bindings
- Nng
0
neachdainn/nng-rs [Nng] — Nng (nanomsg v2) bindings
- NNTP
11
mattnenterprise/rust-nntp — an NNTP client for Rust
- POP3
15
mattnenterprise/rust-pop3 — A POP3 client for Rust
- SSH
141
alexcrichton/ssh2-rs — libssh2 bindings11
Thrussh — an SSH library written from scratch in Rust, backed by libsodium
- Stomp
63
zslayton/stomp-rs — A STOMP 1.2 client implementation in Rust
- uTP
93
meqif/rust-utp — A uTP (Micro Transport Protocol) library for Rust.
- ZeroMQ
370
erickt/rust-zmq — ZeroMQ bindings
- CoAP
68
Covertness/coap-rs — A Constrained Application Protocol(CoAP) library for Rust.
2913
Geal/nom — parser combinator library1353
pest-parser/pest — The Elegant Parser913
lalrpop/lalrpop — LR(1) parser generator for Rust638
Marwes/combine — parser combinator library567
kevinmehall/rust-peg — Parsing Expression Grammar (PEG) parser generator189
m4rw3r/chomp – A fast monadic-style parser combinator118
ptal/oak — A typed PEG parser generator (compiler plugin)37
rustless/queryst — A query string parsing library for Rust inspired by https://github.com/ljharb/qs29
nrc/zero — zero-allocation parsing of binary data17
ivanceras/inquerest — an URL parameter parser for rest filter inquiry
3
pop-os/debarchive Library for reading and extracting debian archives
- Serial Port
38
Susurrus/serialport-rs [serialport] — A cross-platform library that provides access to a serial port
- Linux
109
inotify-rs/inotify — inotify bindings107
pop-os/distinst — Linux distribution installer library21
yaa110/rust-iptables — iptables bindings11
arvancloud/nginx-rs — Nginx bindings6
frol/cgroups-fs — Rust bindings to Linux Control Groups (cgroups)6
pop-os/dbus-udisks2 — UDisks2 DBus API
- Unix-like
911
nix-rust/nix — Unix-like API bindings429
zargony/rust-fuse — FUSE bindings
- Windows
620
retep998/winapi-rs — Windows API bindings
- FreeBSD
14
fubarnetes/libjail-rs — Rust implementation of a FreeBSD jail library10
dlrobertson/capsicum-rs — Rust bindings for the FreeBSD capsicum framework
1670
gluon-lang/gluon — A small, statically-typed, functional programming language797
PistonDevelopers/dyon — A rusty dynamically typed scripting language419
murarth/ketos — A Lisp dialect functional programming language serving as a scripting and extension language for rust341
jonathandturner/rhai — A tiny and fast embedded scripting language resembling a combination of JS and Rust0
moss — A dynamically typed scripting language
- Handlebars
362
sunng87/handlebars-rust — Handlebars template engine with inheritance, custom helper support.0
r-iendo/yarte — compile-time handlebars-like templates
- HTML
746
Keats/tera — template engine based on Jinja2 and the Django template language.688
djc/askama — template rendering engine based on Jinja534
lfairy/maud — compile-time HTML templates150
Stebalien/horrorshow-rs — compile-time HTML templates101
kaj/ructe — HTML template system for Rust
- Mustache
191
rustache/rustache —
9
tailhook/marafet — Compiler for Jade-like template language to cito.js-based virtual dom
1082
rust-lang/regex — Regular expressions (RE2 style)237
greyblake/whatlang-rs — Natural language detection library based on trigrams113
BurntSushi/tabwriter — Elastic tab stops (i.e., text column alignment)111
BurntSushi/suffix — Linear time suffix array construction (with Unicode support)52
ps1dr3x/easy_reader — A reader that allows forwards, backwards and random navigations through the lines of huge files without consuming iterators51
mgeisler/textwrap [textwrap] — Word wrap text (with support for hyphenation)27
Lucretiel/joinery [joinery] – Generic string + iterable joining17
pwoolcoc/ngrams — Construct n-grams from arbitrary iterators7
yaa110/rake-rs — Multilingual implementation of RAKE algorithm for Rust0
strsim-rs — String similarity metrics
2330
tantivy-search/tantivy [tantivy] —655
BurntSushi/fst [fst] —59
CurrySoftware/perlin [perlin] —
106
beneills/quantum — Advanced Rust quantum computer simulator77
ekse/unicorn-rs — Rust bindings for the unicorn CPU emulator32
saurvs/hypervisor-rs — Hardware-accelerated virtualization on OS X
See also Are we web yet? and Rust web framework comparison.
- Client-side / WASM
- HTTP Client
4580
hyperium/hyper — an HTTP implementation1372
seanmonstar/reqwest — an ergonomic HTTP Client for Rust.508
alexcrichton/curl-rust — libcurl bindings0
DoumanAsh/yukikaze — Beautiful and elegant Yukikaze is little HTTP client library based on hyper.
- HTTP Server
6965
Rocket — Rocket is web framework for Rust (nightly) with a focus on ease-of-use, expressability, and speed5354
Iron — A middleware-based server framework4580
hyperium/hyper — an HTTP implementation3795
actix/actix-web — A lightweight async web framework for Rust with websocket support2448
Nickel — inspired by Express1229
Gotham — A flexible web framework that does not sacrifice safety, security or speed.868
Ogeon/rustful — A RESTful web framework for Rust821
housleyjk/ws-rs — lightweight, event-driven WebSockets for Rust780
vi/websocat — CLI for interacting with WebSockets, with functionality of Netcat, Curl and Socat.581
carllerche/tower-web [tower-web] — A fast, boilerplate free, web framework for Rust569
Rustless — A REST-like API micro-framework inspired by Grape and Hyper556
rustforce/sapper — A lightweight web framework built on async hyper, implemented in Rust language.443
tomaka/rouille — Web framework in Rust362
handlebars-rust — an Iron web framework middleware.331
tiny-http — Low level HTTP server library188
GildedHonour/frank_jwt — JSON Web Token implementation in Rust.154
snapview/tungstenite-rs — Lightweight stream-based WebSocket implementation for Rust.57
danclive/sincere — A micro web framework for Rust(stable) based on hyper and multithreading.45
actix/sockjs — A SockJS server for Rust45
oltdaniel/zap — A lightning fast http framework for Rust11
Saphir — A progressive web framework with low-level control, without the pain.9
vityafx/urlshortener-rs [urlshortener] — A very simple urlshortener library for Rust.4
cyderize/rust-websocket — A framework for dealing with WebSocket connections (both clients and servers)0
branca — A Pure Rust implementation of Branca for Authenticated and Encrypted API tokens.
0
WebSocket- Miscellaneous
384
utkarshkukreti/select.rs [select] — A library to extract useful data from HTML documents, suitable for web scraping.173
cargonauts — A web framework intended for building maintainable, well-factored web apps.157
pyros2097/rust-embed — A macro to embed static assets into the rust binary
- Reverse Proxy
806
sozu-proxy/sozu [sozu] — A HTTP reverse proxy.
- Static Site Generators
1819
getzola/zola [zola] — An opinionated static site generator with everything built-in.729
cobalt-org/cobalt.rs — Static site generator written in Rust46
leven-the-blog/leven [leven] — A simple, parallelized blog generator.19
FuGangqiang/mdblog.rs — Static site generator from markdown files.
A registry allows you to publish your Rust libraries as crate packages, to share them with others publicly and privately.
0
Crates - The official public registry for Rust/Cargo.0
Cloudsmith 💲 - A fully managed package management SaaS, with first-class support for public and private Cargo/Rust registries (plus many others). Has a generous free-tier and is also completely free for open-source.
- Benchmarks
50
TeXitoi/benchmarksgame-rs — Rust implementations for the The Computer Language Benchmarks Game
- Decks & Presentations
0
Learning systems programming with Rust — Presented by Julia Evans @ Rustconf 2016.0
Shipping a Solid Rust Crate — Presented by Michael Gattozzi @ RustConf 20170
Rust: Hack Without Fear! — Presented by Nicholas Matsakis @ C++Now 2018
- Learning
10517
exercism.io — programming exercises that help you learn new concepts in Rust.4300
rust-learning — A collection of useful resources to learn Rust4078
Rustlings — small exercises to get you used to reading and writing Rust code3101
Rust by Example1133
Idiomatic Rust — A peer-reviewed collection of articles/talks/repos which teach idiomatic Rust.1119
stdx — Learn these crates first as an extension to std674
Learning Rust With Entirely Too Many Linked Lists — in-depth exploration of Rust's memory management rules, through implementing a few different types of list structures.10
Rust in Motion — A video series by Carol Nichols and Jake Goulding (paid)0
Build a language VM0
Programming Community Curated Resources for Learning Rust — A list of recommended resources voted by the programming community.0
University of Pennsylvania's Comp Sci Rust Programming Course0
Rust Cookbook — A collection of simple examples that demonstrate good practices to accomplish common programming tasks, using the crates of the Rust ecosystem.
- Podcasts
2260
Rust Design Patterns1720
Rusty Spike — news on all things Rust
545
RustBooks — list of RustBooks0
New Rustacean — A podcast about learning Rust
0
RustCamp 2015 Talks0
Rust Guidelines0
Rust Subreddit — A subreddit(forum) where rust related questions, articles and resources are posted and discussed
@alongwill
This is a known issue and it is not a bug with ripgrep specifically but a limitation of entries in the list linking to
crates.io
, which uses a client-sided javascript framework to render the page content. Since the CLI tool to sort awesome lists by stars attempts to retrieve the HTML content for non github.com / github.io links, it is unable to fetch the links for things that require javascript rendering.