Index of Examples

Algorithms

Randomness

Sorting

Asynchronous

Async

Async and Blocking

Async Channels

Async Traits

RecipeCratesCategories
Async Traitsasync-traitcat-asynchronous

Async Utilities

Futures

RecipeCratesCategories
Selecting Futuresfuturescat-asynchronous
Joining Futuresfuturescat-asynchronous
Map, then, either, flattenfuturescat-asynchronous
futures-util[![futures-util][c-futures-util-badge]][c-futures-util]cat-asynchronous

Streams

RecipeCratesCategories
Streamsfuturescat-asynchronous

Tokio

RecipeCratesCategories
Basicstokiocat-asynchronous
Jointokiocat-asynchronous
Spawningtokiocat-asynchronous
IOtokiocat-asynchronous
Graceful Shutdowntokio_graceful_shutdowncat-asynchronous

Authentication

Basic Authentication

RecipeCratesCategories
Perform a Basic HTTP Authenticationreqwestcat-authentication cat-network-programming

Caching

LRU

Command Line Interface

ANSI Terminal

Argument Parsing

TUI

RecipeCratesCategories
Build Complex TUIratatuicat-command-line-interface

User Interaction

Command Line Utilities

Filesystem CLI

RecipeCratesCategories
lsdlsdcat-command-line-utilities
exaexacat-command-line-utilities
brootbrootcat-command-line-utilities
batbatcat-command-line-utilities
openopencat-command-line-utilities

Networking CLI

RecipeCratesCategories
gpinggpingcat-command-line-utilities

Shells

RecipeCratesCategories
starshipstarshipcat-command-line-utilities
nushellnushellcat-command-line-utilities

Compression

flate2

RecipeCratesCategories
Compress then Decompressflate2cat-compression

tar

Concurrency

Atomics

RecipeCratesCategories
Standard Atomic Typesstdcat-concurrency
arc-swaparc-swapcat-concurrency

Concurrent Data Structures

crossbeam

Data Parallelism

Explicit Threads

RecipeCratesCategories
Use spawn, joinstd[cat-concurrency]
Use scoped threadsstdcat-concurrency

Message Passing

Send Sync

Shared State

Threadpool

Config

Configuration

RecipeCratesCategories
configconfigcat-config
confyconfycat-config

Environment Variables

RecipeCratesCategories
dotenvydotenvycat-config
std::envstdcat-config
envyenvycat-config

Cryptography

AEAD

RecipeCratesCategories
aes-gcm-sivaes-gcm-siv aes-gcmcat-cryptography
aes-gcmaes-gcmcat-cryptography
ChaCha20Poly1305chacha20poly1305cat-cryptography

Certificates

RecipeCratesCategories
DERdercat-cryptography
pem-rfc7468pem-rfc7468cat-cryptography
pkcs8pkcs8cat-cryptography
x509-certx509-certcat-cryptography

Cryptography Utilities

RecipeCratesCategories
subtlesubtlecat-cryptography
zeroizezeroizecat-cryptography

Encryption

RecipeCratesCategories
Use the RSA Algorithmrsacat-cryptography

Hashing

HMAC

Password Hashing

Signature

RecipeCratesCategories
ed25519ed25519-websitecat-cryptography
ed25519-daleked25519-dalek-websitecat-cryptography
ecdsaecdsacat-cryptography
dsadsacat-cryptography

TLS

RecipeCratesCategories
rustlsrustlscat-cryptography
native-tlsnative-tlscat-cryptography

Data Structures

Binaryheap

RecipeCratesCategories
priority-queuestdcat-data-structures

Bitfield

Btrees

RecipeCratesCategories
BTreeMap<K, V>stdcat-data-structures
BTreeSet<T>stdcat-data-structures

Heapless

RecipeCratesCategories
Heaplessstdcat-data-structures

LinkedList

RecipeCratesCategories
Stored Data in a Linked Liststdcat-data-structures

Maps

Stack Allocated Arrays

RecipeCratesCategories
arrayvecarrayveccat-data-structures
smallvecsmallveccat-data-structures
tinyvectinyveccat-data-structures

Stack and Queue

UUID

RecipeCratesCategories
Generate and Parse UUIDsuuidcat-data-structures

Database

AMQP

RecipeCratesCategories
Connect to RabbitMQ with lapinlapincat-database

Connection Pool

RecipeCratesCategories
Create a Connection Pooldeadpoolcat-database

Key Value Stores

RecipeCratesCategories
heedheedcat-database
rocksdbrocksdbcat-database

MSSQL

RecipeCratesCategories
tiberiustiberiuscat-database

NoSQL

Oracle

Postgres

Query Builders ORMs

RecipeCratesCategories
sqlxsqlxcat-database
dieseldieselcat-database
SeaORMsea-ormcat-database
toastytoastycat-database

SQLite

Database Implementations

Databases

RecipeCratesCategories
sledsledcat-algorithms cat-caching cat-concurrency cat-data-structures cat-database-implementations
SurrealDBsurrealdbcat-data-structures cat-database-implementations cat-embedded
RabbitMQlapincat-database-implementations

Rust Search Engines

RecipeCratesCategories
meilisearchmeilisearchcat-database-implementations
tantivytantivycat-data-structures cat-database-implementations

Date and Time

Duration

Parse

Time Crate

RecipeCratesCategories
Use the time Cratetimecat-date-and-time cat-value-formatting cat-parser-implementations cat-no-std

Cargo

Cargo

Crate Registries

Package Layout

RecipeCratesCategories
Package Layoutcargocat-development-tools

Compilation

Faster Linking

RecipeCratesCategories
Optimize Linkinglldzldcat-compilers
Alternative - mold Linkermoldcat-compilers

Reduce Compilation Duration

Cross Compilation

Cross Compilation

Documentation

Badges

RecipeCratesCategories
Badgesshield.iocat-development-tools

Documentation

mdBook

Formatting

Formatting

Installation

Install

Rustup

Other

Code Build

Code Verification

miri

Other

Transcompilation

Transpilers

RecipeCratesCategories
C to Rust Translationc2rustcat-compilers

Versioning

Versioning

Development Tools: Build Utils

autocfg

RecipeCratesCategories
autocfgautocfgcat-development-tools::build-utils

Build Cache

RecipeCratesCategories
Use sccachesccachecat-development-tools::build-utils

Build Time Tooling

Development Tools: Cargo Plugins

Auditing

Building

Code Formatting Linting

Code Writing

Cross Compiling

Dependency Management

RecipeCrates
Edit Cargo.toml[![cargo-edit][c-cargo-edit-badge]][c-cargo-edit]
Detect Dependencies that are Out of Date[![cargo-outdated][c-cargo-outdated-badge]][c-cargo-outdated]
Find Unused Dependencies[![cargo-udeps][c-cargo-udeps-badge]][c-cargo-udeps][![cargo-machete][c-cargo-machete-badge]][c-cargo-machete]
deps.rsdeps.rs
Rust Diggerrust-digger.code-maven.com

Maintaining

Performance

Watching For Changes

RecipeCratesCategories
cargo watchcargo-watchcat-development-tools::cargo-plugins
cargo limitcargo-limitcat-development-tools::cargo-plugins

Development Tools: Debugging

Config Log

Debugging

RecipeCratesCategories
cat-development-tools::debugging

Diagnostic Functions

Distributed Telemetry

RecipeCratesCategories
Jaeger[![jaeger][c-jaeger-badge]][c-jaeger]cat-development-tools::debugging
OpenObserve[![openobserve][c-openobserve-badge]][c-openobserve]cat-development-tools::debugging
Distributed Tracing with OpenTelemetryopentelemetrycat-development-tools::debugging

Log

Tracing

Tracing Alternatives

Development Tools: Profiling

Assembly

RecipeCratesCategories
Inspect the Generated Assemblycargo-show-asmcat-development-tools::profiling

Benchmarking

RecipeCratesCategories
cargo flamegraphcargo-flamegraphcat-development-tools::profiling
criterioncriterioncat-development-tools::profiling
divandivancat-development-tools::profiling
hyperfinehyperfinecat-development-tools::profiling

Memory Usage Analysis

Development Tools: Testing

Assertions

Code Coverage

Fuzzing

RecipeCratesCategories
aflaflcat-development-tools::testing
cargo fuzz[![cargo-fuzz][c-cargo-fuzz-badge]][c-cargo-fuzz]cat-development-tools::testing

Mocking

Property Based Testing

Test Runners

Testing

Encoding

Complex Encoding

CSV

No External Schema

RecipeCratesCategories
postcardpostcardcat-encoding
rkyvrkyvcat-encoding

Serde

String Encoding

Typecasts

RecipeCratesCategories
bytemuckbytemuckcat-encoding
zerocopyzerocopycat-encoding

Filesystem

Directories

Directory Traversal

File Watching

Read-Write

tempfile

User Directories

RecipeCratesCategories
dirsdirscat-filesystem
directoriesdirectoriescat-filesystem

Hardware Support

Peripherals

RecipeCratesCategories
cat-hardware-support

Processor

RecipeCratesCategories
Check the Number of Logical cpu Coresnum_cpuscat-hardware-support
SIMD (Single Instruction, Multiple Data) Operations[![std::arch][c-std::arch-badge]][c-std::arch]cat-hardware-support

Mathematics

Additional Numeric Types

Complex Numbers

Linear Algebra

Statistics

Trigonometry

Memory Management

Lazy Initialization

Memory Allocation

Network Programming

Reverse Proxy

RecipeCratesCategories
ratholeratholecat-network-programming
ngrokngrokcat-network-programming
nginxnginx proxy managercat-network-programming
pingorapingoracat-network-programming

Server

OS

External Commands

Low Level System Calls

RecipeCratesCategories
Call libc, the C Standard Librarylibccat-os

Rust OS

OS: Windows APIs

Windows

Parser Implementations

HTML

INI

JSON

Markdown

RecipeCratesCategories
comrakcomrakcat-parser-implementations
markdownmarkdowncat-parser-implementations
pulldown-cmarkpulldown-cmarkcat-parser-implementations

Programming Languages

RecipeCratesCategories
Parse JavaScriptswc_ecma_parsercat-parser-implementations
Parse SQLsqlparsercat-parser-implementations
Parse Rust Codesynquotecat-parser-implementations
Parse WebAssembly (WAT/WASM)wat[![parity-wasm][c-parity-wasm-badge]][c-parity-wasm]cat-parser-implementations

TOML

RecipeCratesCategories
basic_tomlbasic-tomlcat-parser-implementations
toml_edittoml_editcat-parser-implementations
tomltomlcat-parser-implementations

XML

YAML

RecipeCratesCategories
Parse YAML with serde_ymlserde_ymlcat-parser-implementations

Error: Handling

Error Customization

RecipeCratesCategories
anyhowanyhowcat-rust-patterns
thisErrorthiserrorcat-rust-patterns
miettemiettecat-rust-patterns
color-eyrecolor-eyrecat-rust-patterns

Error Handling

Template Engine

tera

RecipeCratesCategories
Create HTML Files from a Templateteracat-template-engine

tinytemplate

Text Editors

IDEs

Text Processing

Diffing

RecipeCratesCategories
diffdiffcat-text-processing
similarsimilarcat-text-processing

Other Strings

RecipeCratesCategories
bstrbstrcat-text-processing
CString and CStrstdcat-text-processing
OsString and OsStrstdcat-text-processing

Regex

String Concat

RecipeCratesCategories
Concatenate Stringsstdcat-text-processing

String Manipulation

RecipeCratesCategories
heckheckcat-text-processing
indocindoccat-text-processing
textwraptextwrapcat-text-processing

String Parsing

RecipeCratesCategories
aho-corasick[![aho-corasick][c-aho-corasick-badge]][c-aho-corasick]cat-text-processing
fuzzy-matcher[![fuzzy-matcher][c-fuzzy-matcher-badge]][c-fuzzy-matcher]cat-text-processing
memchrmemchrcat-text-processing
strsimstrsimcat-text-processing

Unicode

RecipeCratesCategories
Collect Unicode Graphemesunicode_segmentationcat-text-processing

Web Programming

HTTP Types and Interfaces

RecipeCratesCategories
httphttpcat-web-programming
http-body[![http-body][c-http-body-badge]][c-http-body]cat-web-programming
http-body-util[![http-body-util][c-http-body-util-badge]][c-http-body-util]cat-web-programming

MIME

Scraping

URL

Web Programming: HTTP Client

APIs

Download

HTTP Clients

Requests

Web Programming: HTTP Server

CORS

RecipeCratesCategories
Implement CORStower tower-httpcat-web-programming

Middleware

Other Frameworks

RecipeCratesCategories
Implement a HTTP Server Using rocketrocketcat-web-programming cat-web-programming::http-server

Static Website Generators

Contributing

API Documentation

Dev Container Docker

Dev Environment Setup

Development Editing

Optional Preprocessors

Publication

Repo Structure

Topics of Interest

Crates

Language

Attributes

Closures

Control Flow

Enums

Functions

Generics

Iterators

Lifetimes

Macros

Main

Match

Modules

Ownership Borrowing

Rust Install

Simple Data Types

Slices

Structs

Trait Objects

Traits

Variables and Constants

Blogs Podcasts Meetups

Books

Companies

Example Code

Learning

Rust Cheatsheets

Standard Library

AsRef

RecipeCrates
AsRef and &Tstd

Cow

Derive

Hashmaps

RecipeCrates
Hashmapsstd

Option

Result

RecipeCrates
Resultstd

Smart Pointers

RecipeCrates
Boxstd
Rcstd
RefCellstd
Cellstd
OnceCellstd

Strings

Vectors

RecipeCrates
Vecstd