Security audit of the
Checkts the audit database for any reported issues.
Warning: First run can be very slow, because it's building a copy of the crates.io database.
Create Graphviz graph of the used deps (needs graphviz or a
dot compatible tool installed)
Geigercounter for unsafe / unstable rust code (if installation fails, use
cargo install --locked cargo-geiger)
Warning: Execution can be slow, because it is inspecting the complete dependency graph of a project
Display license overview of referenced libraries
List outdated crates from your
Release a new version of your crate and optionally upload to crates.io.
Run a specified command on detected file changes (check by default). Can be combined with listenfd for example
Check rust code for common mistakes - install via
Reformat rust code - install via
Github: https://github.com/jonhoo/rust-imap IMAP adapter and connector for rust
Github: https://github.com/lettre/lettre SMTP, sendmail (and more) mail sender
Github: https://github.com/staktrace/mailparse Parse a mail content response.
Async, Futures, Multi Threading and Parallelism
Github: https://github.com/async-rs/async-std Lots of async ports of std lib structs and functions
Github: https://github.com/tokio-rs/mio Async low level I/O
This library provides implementations of
Once that are smaller, faster and more flexible
Github: https://github.com/zesterer/pollster Pollster is an incredibly minimal async executor
Rayon is a parallel
iter processor - it converts simple, single threaded (or blocking)
iter calls into parallel ones. It is lightweight and ensures to be mostly data race free.
Github: https://github.com/tokio-rs/tokio Async event-driven and non blocking (I/O) platform and runner for rust
Github: https://github.com/jhasse/ears OpenAL and libsndfile based audio playback.
Github: https://github.com/RustAudio/rodio Rust only playback system for wav, mp3, ogg and flac.
Console and Terminal
Command line parsing library for rust, comes integrated with
stuctopt starting on v3.
Github: https://github.com/mitsuhiko/indicatif Progressbars and single char spinners for the console
Github: https://github.com/kkawakam/rustyline Simple Readline like library
Github: https://github.com/SergioBenitez/yansi Enable ansi based coloring of consoles. (Windows support only starting with Win 10 anniversary edition / ConPTY)
Github: https://github.com/RustCrypto/hashes Provide several pure rust implementation of common hashing algorithms. See github repo for actual crate names
Github: https://github.com/RustCrypto/password-hashes Provides several password specialized hashing algorithms. See github repo for actual crate names
Github: https://github.com/mitsuhiko/redis-rs Redis adapter and connector
postgres & tokio-postgres
Github: https://github.com/sfackler/rust-postgres postgres adapter and connector, with async version
Github: https://github.com/JelteF/derive_more Derives for basic builtin traits
derive(new) attribute creates a
new constructor function for the annotated type
Github: https://github.com/idanarye/rust-typed-builder Creates a compile-time verified builder
This library provides
anyhow::Error, a trait object based error type for easy idiomatic error handling in Rust applications.
Github: https://github.com/rust-lang/backtrace-rs A library for acquiring backtraces at runtime for Rust.
This library provides a convenient derive macro for the standard library's
Github: https://github.com/amethyst/distill Distill is an asset pipeline for games, reading artist-friendly formats from disk, processing them into your engine-ready formats, and delivering them to your game runtime.
Github: https://github.com/emilk/egui Immediate equi in pure rust
Github: https://github.com/amethyst/legion Legion aims to be a feature rich high performance Entity component system (ECS) library for Rust game projects with minimal boilerplate.
Github: https://github.com/gltf-rs/gltf glTF 2.0 loader
Github: https://github.com/Twinklebear/tobj tiny object loader
Github: https://crates.io/crates/vulkanalia Vulkan interop
Github: https://github.com/rust-windowing/winit Cross-platform window creation and management in Rust
Interop and Scripting
Github: https://github.com/eqrion/cbindgen/ Generate C/++ header files for library crates that provides a public C api (see docs for details).
Github: https://github.com/CasualX/cvar Configure programs through stringly typed API.
Github: https://github.com/astonbitecode/j4rs Java 4 Rust - call java from rust, or provide jni libs for the jvm.
Github: https://github.com/jni-rs/jni-rs JNI for rust.
Github: https://github.com/khvzak/mlua Lua scripting (5.1 - 5.4)
Github: https://git.asonix.dog/Aardwolf/activitystreams activity streams
Github: https://git.asonix.dog/Aardwolf/activitystreams activity streams extensions
Github: https://github.com/BurntSushi/byteorder This crate provides convenience methods for encoding and decoding numbers in either big-endian or little-endian order.
Github: https://github.com/mehcode/config-rs Configure your application from config files (json, toml, yaml, hjson, ini). Extensible with custom types.
Github: https://github.com/dotenv-rs/dotenv dotenv loading (simple variable name to value mapping)
Github: https://github.com/image-rs/image Image loading and saving
Github: https://github.com/image-rs/imageproc Image processing using image
Github: https://github.com/rust-itertools/itertools Iterator extensions
Github: https://github.com/rust-lang-nursery/lazy-static A macro for declaring lazily evaluated statics in Rust.
Github: https://github.com/mitsuhiko/rust-listenfd listenfd is a crate that provides support for working with externally managed and passed file descriptors.
Github: https://github.com/mitsuhiko/systemfd systemfd is a program that opens ports and forwards them to listenfd, can be used with cargo-watch
Github: https://github.com/dimforge/nalgebra Linear algebra written in pure rust
Github: https://github.com/seanmonstar/num_cpus Count the number of CPUs on the current machine.
Github: https://github.com/garro95/priority-queue Priority based queue for rust
Github: https://crates.io/crates/rand random number generators
Github: https://github.com/rust-lang/regex Regular expression with linear execution
Github: https://github.com/pyros2097/rust-embed Embed files into binary on release, read live from filesystem on debug
Github: https://github.com/dguo/strsim-rs Calculate string similarity using different algorithms
Github: https://github.com/Stebalien/tempfile Temp files and folders
Github: https://github.com/tokio-rs/tracing Application-level tracing for Rust.
This crate provides
.expect_or_log() methods on
Option types that log failed
Utilities for implementing and composing
Github: https://crates.io/crates/tracy-rs Rust bindings for the tracy realtime profiler
Github: https://github.com/nagisa/rust_tracy_client Tracy integration with tracy
Github: https://github.com/nagisa/rust_tracy_client client library for tracy
Github: https://github.com/BurntSushi/walkdir Cross platform implementation of walking through a file system directory recursively.
Github: https://github.com/Plume-org/webfinger A crate to help you fetch and serve WebFinger resources.
Github: https://github.com/kazk/xid-rs Globally unique sortable id generator.
Github: https://github.com/hyperium/hyper low-level http 1 & 2 server
Github: https://github.com/seanmonstar/reqwest HTTP client
Pijul: https://pijul.org/thrussh/ (uses pijul version control system) Pure rust ssh client & server library
Github: https://github.com/snapview/tungstenite-rs Stream based websocket handler
Github: https://github.com/seanmonstar/warp basic http micro framework on top of hyper.
Github: https://github.com/retep998/winapi-rs Windows API implementration.
Github: https://github.com/BurntSushi/winapi-util wrappers around winapi to provide common scenarios without much ffi code.
Github: https://github.com/rust-ammonia/ammonia Ammonia is a whitelist-based HTML sanitization library.
Github: https://github.com/serde-rs/serde Core component of most serialization modules
Github: https://github.com/ron-rs/ron Rust Object Notion support for serde
Github: https://github.com/3Hren/msgpack-rust msgpack support for serde
Github: https://github.com/serde-rs/json json support for serde
Github: https://github.com/samscott89/serde_qs url encoded parser (as used e.g. in querystrings), supports nested values and deserializing into nested structs. uses serde_urlencoded under the hud.
Github: https://github.com/nox/serde_urlencoded url encoded parser (as used e.g. in querystrings), only supports top level parsing (e.g. no arrays)
Github: https://github.com/dtolnay/serde-yaml yaml support for serde
Github: https://github.com/alexcrichton/toml-rs toml support for serde
Github: https://github.com/servo/rust-url url parsing according to whatwg url standard
Useful extensions to
Github: https://github.com/djzin/chrono-tz Timezones for chrono.
Github: https://github.com/ellisonch/rust-stopwatch Stopwatch (timings) module
Github: https://github.com/BurntSushi/quickcheck Send random input data to a function - with proper shrinking.
These are mostly a list of libs, I might consider at some point
- https://github.com/danburkert/prost (protobuf)
- https://github.com/stepancheg/rust-protobuf (protobuf)
- https://github.com/frol/flatc-rust (flatbuffers)
- https://github.com/VictoremWinbringer/Victorem (udp game server / client framework)