Ben Chuanlong Du's Blog

It is never too late to learn.

Useful Rust Crates

Things on this page are fragmentary and immature notes/thoughts of the author. Please read with your own judgement!

Summary of Collections in Rust

Dev Tools for Rust

Error Handling in Rust

Useful Rust Crates for Testing

Profile Rust Applications

Implement a Singleton in Rust

Generating Random Numbers in Rust

Useful Rust Crates for Bit Manipulations

Serialization and Deserialization in Rust

Design Pattern and Productivity for Rust

Useful Algorithms Implemented in Rust

Progress Bar in Rust

Rust for Backend Development

Rust for Frontend Development

Parsing Command-line Arguments in Rust

Useful Rust Crates for Developing Command Line Apps

Great Command Line Tools Developed in Rust

Rust Crates for RPC

Rust for Distributed Applications

Useful Rust Crates for Filesystem

Compress and Decompress Files in Rust

Rust for Game Development

Foreign Language Integration in Rust

Rust for IoT

Search Engines


tantivy is a full-text search engine library written in Rust.

Building a distributed search engine with tantivy

Memory Management

stacker A stack growth library useful when implementing deeply recursive algorithms that may accidentally blow the stack.

serde_stacker Serde adapter that avoids stack overflow by dynamically growing the stack


shared_memory A crate that allows you to share memory between processes. This crate provides lightweight wrappers around shared memory APIs in an OS agnostic way. It is intended to be used with it's sister crate raw_sync which provide simple primitves to synchronize access to the shared memory (Mutex, RwLock, Events, etc).


rust-scudo contains the Rust bindings for the Scudo hardened allocator.


Develop Macros in Rust

Plug-in System


extism is an universal plug-in System which allows you to extend anything with WebAssembly.