Index of Examples

Accessibility

Screen Readers

Algorithms

Randomness

Sorting

API Bindings

Python Interop

RecipeCratesCategories
Python Interoppyo3cat-api-bindings

Asynchronous

Async

Async and Blocking

Async Channels

Async Traits

RecipeCratesCategories
Async traitscat-asynchronous

Futures

Streams

RecipeCratesCategories
Streamsfuturescat-asynchronous

Tokio

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

Authentication

Basic Authentication

RecipeCratesCategories
Basic Authenticationreqwestcat-authentication cat-network-programming

Caching

LRU Caching

RecipeCratesCategories
LRU cachelrucat-caching

Command Line Interface

ANSI Terminal

Arguments

TUI

RecipeCratesCategories
Build complex TUIratatuicat-command-line-interface{{hi:Command-line interface}}

User Interaction

Command Line Utilities

Filesystem

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

Networking

RecipeCratesCategories
Networking tools: gpinggpingcat-command-line-utilities

Shells

RecipeCratesCategories
Shells and related utilitiesstarshipcat-command-line-utilities

Compilers

Cross Compilation

Faster Linking

Compilation Duration Reduction

Compression

tar

Computer Vision

OpenCV

RecipeCratesCategories
Analyze images with Open CVopencvcat-computer-vision

Shared State

Concurrent Data Structures

Shared State

RecipeCratesCategories
Mutexescat-concurrency
Parking Lotcat-concurrency
Atomicscat-concurrency
arc-swapcat-concurrency

Config

Configuration

Environment Variables

Cryptography

Encryption

RecipeCratesCategories
Salt and hash a password with PBKDF2ring data-encodingcat-cryptography

Hashing

Password Hashing

RecipeCratesCategories
argon2cat-cryptography
scryptcat-cryptography
bcryptcat-cryptography

Data Structures

Bitfield

Maps

RecipeCratesCategories
Insertion-ordered mapindexmapcat-data-structures
Multimapmultimapcat-data-structures
Slotmapslotmapcat-data-structures

Stack-allocated Arrays

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

UUIDs

RecipeCratesCategories
Generate and parse UUIDsuuidcat-data-structures

Database Implementations

Databases

RecipeCratesCategories
Sledsledcat-algorithms cat-caching cat-concurrency cat-data-structures cat-database-implementations
SurrealDBsurrealdbcat-data-structures [cat-database-implementations] cat-database-implementations cat-embedded
RecipeCratesCategories
Meilisearchmeilisearchcat-database-implementations
Tantivytantivycat-data-structures cat-database-implementations

Date and Time

Duration

Parse

Time

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

Cargo & Friends

Cargo

Crate Registries

RecipeCratesCategories
Crate Registriescat-development-tools

Package Layout

RecipeCratesCategories
Package layout

Documentation

Badges

RecipeCratesCategories
BadgesShield.iocat-development-tools

Documentation

mdbook

Formatting

Formatting

Installation

Installation

RecipeCratesCategories
Rustupcat-development-tools
Cargo installcat-development-tools
Cargo binstallcat-development-tools

rustup

RecipeCratesCategories
Key commandscat-development-tools

Other

just

miri

RecipeCratesCategories
Miricat-development-tools
Miri installationcat-development-tools

Other

Versioning

Versioning

Development Tools: Build Utils

Build Utils

Development Tools: Cargo-Plugins

Auditing

Building

Code Formatting and Linting

Cross-Compiling

Maintaining

Performance

Watching For Changes

RecipeCratesCategories
Cargo watchcat-development-tools::cargo-plugins
Cargo limitcat-development-tools::cargo-plugins

Writing

Development Tools: Debugging

Alternatives

Config Log

Diagnostic Functions

Log

Tracing

Development Tools: FFI

Generate FFI Bindings

RecipeCratesCategories
bindgenbindgencat-development-tools::ffi cat-external-ffi-bindings
cbindgencbindgencat-development-tools::ffi cat-external-ffi-bindings
cxxcxxcat-development-tools::ffi cat-no-std{{hi:No standard library}}

Development Tools: Procedural Macro-Helpers

Compile Macros

RecipeCratesCategories
Wattwattcat-development-tools::procedural-macro-helpers

Tools

RecipeCratesCategories
cargo expandcat-development-tools::procedural-macro-helpers

Write Proc Macros

Development Tools: Profiling

Assembly

RecipeCratesCategories
Inspect the generated assemblycat-development-tools::profiling

Benchmarking

RecipeCratesCategories
cargo flamegraphcat-development-tools::profiling
Criterioncat-development-tools::profiling
Divancat-development-tools::profiling
Hyperfinecat-development-tools::profiling

Memory

RecipeCratesCategories
Profile heap memorycat-development-tools::profiling

Development Tools: Testing

Fuzzing

RecipeCratesCategories
aflaflcat-development-tools::testing

Testing

Email

Send Emails

RecipeCratesCategories
Send an emaillettrecat-email

Embedded

Embassy

RecipeCratesCategories
Embassyembassycat-embedded

Emulators

Emulators

RecipeCratesCategories
emulatorscat-emulators

Encoding

Complex

CSV

Serde

RecipeCratesCategories
JSONcat-encoding
serde-jsoncat-encoding
monostatecat-encoding
serde-ignoredcat-encoding

Strings

Typecasts

RecipeCratesCategories
bytemuckbytemuckcat-encoding
zerocopyzerocopycat-encoding

External FFI Bindings

External FFI Bindings

RecipeCratesCategories
fficat-external-ffi-bindings

Filesystem

cwd

RecipeCratesCategories
Get the current working directorycat-filesystem

dir

File Watching

Ignore

Read & Write Files

Tempfiles and Directories

User Directories

Finance

Quant

RecipeCratesCategories
RustQuantrustquantcat-finance

Game Development

Game Development

RecipeCratesCategories
Game developmentcat-game-development

Game Engines

Game Engines

RecipeCratesCategories
bevybevy-githubcat-game-engines
fyroxcat-game-engines
ggezcat-game-engines
macroquadcat-game-engines
glamcat-game-engines

Graphics

Webgpu

RecipeCratesCategories
wgpuwgpucat-graphics

GUI

2D Renderers

RecipeCratesCategories
femtovgcat-gui
skia-safecat-gui
vellocat-gui
vgercat-gui
webrendercat-gui

Clipboard

RecipeCratesCategories
arboardcat-gui

File Dialogs

RecipeCratesCategories
rfdcat-gui

GTK

RecipeCratesCategories
gtk4cat-gui
relm4cat-gui

Immediate Mode Gui

RecipeCratesCategories
eGUIeguicat-gui

Other GUI

RecipeCratesCategories
xilemcat-gui
slintcat-gui
GPUIcat-gui
druidcat-gui

Retained-mode GUI

RecipeCratesCategories
icedcat-gui
floemcat-gui

Text Layout

RecipeCratesCategories
cosmic-textcat-gui
parleycat-gui

UI Layout

RecipeCratesCategories
taffycat-gui
morphormcat-gui

Web-based GUI

RecipeCratesCategories
Tauritauricat-gui
dioxuscat-gui

Window Creation

RecipeCratesCategories
winitcat-gui
taocat-gui

Hardware Support

Processor

RecipeCratesCategories
Get the number of logical cpu coresnum_cpuscat-hardware-support

Internationalization

Internationalization

RecipeCratesCategories
internationalizationcat-internationalization

Localization

Localization

RecipeCratesCategories
Localizationcat-localization

Mathematics

Additional Numeric Types

Complex Numbers

Linear Algebra

Statistics

Trigonometry

Memory Management

Global Static

RecipeCratesCategories
Declare lazily evaluated constantlazy_staticcat-caching cat-rust-patterns cat-memory-management

Lazy Initialization

RecipeCratesCategories
stdcat-memory-management
once_cellonce_cellcat-memory-management
lazy_staticlazy_staticcat-memory-management

Multimedia Audio

Audio

RecipeCratesCategories
Audiocat-multimedia::audio

Multimedia Encoding

Encoding

RecipeCratesCategories
Multimedia encodingcat-multimedia::encoding

Multimedia Images

Images

RecipeCratesCategories
Imagescat-multimedia::images

Multimedia Video

Video

RecipeCratesCategories
Videocat-multimedia::video

Network Programming

Reverse Proxy

RecipeCratesCategories
Ratholeratholecat-network-programming
ngrokngrokcat-network-programming
nginxcat-network-programming
Pingorapingoracat-network-programming

Server

No alloc

No alloc

RecipeCratesCategories
No alloccat-no-std::no-alloc

OS: FreeBSD APIs

FreeBSD

RecipeCratesCategories
FreeBSDcat-os::freebsd-apis

OS: Linux APIs

Linux

RecipeCratesCategories
Linuxcat-os::linux-apis

OS: macOS APIs

macOS

RecipeCratesCategories
macOScat-os::macos-apis

OS: Unix APIs

Unix

RecipeCratesCategories
rustixrustixcat-os::unix-apis{{hi:Unix APIs}}
nixnixcat-os::unix-apis{{hi:Unix APIs}}

OS: Windows APIs

Windows

RecipeCratesCategories
Integrate with Windows APIswindows-githubcat-os::windows-apis
winapiwinapicat-os::windows-apis

Parser Implementations

Parser Implementations

RecipeCratesCategories
JavaScriptcat-parser-implementations

Parsing

Parsing

RecipeCratesCategories
Nomnomcat-parsing
Pestpest-websitecat-parsing
Tree sittertree-sittercat-parsing

Rendering: Data Formats

Data Formats

RecipeCratesCategories
Data formatscat-rendering::data-formats

Rendering Engine

Rendering Engines

RecipeCratesCategories
Rendercat-rendering::engine

Rendering: Graphics APIs

Graphics APIs

RecipeCratesCategories
Graphicscat-rendering::graphics-api

Rust Patterns

Design Patterns

RecipeCratesCategories
Abstract factorycat-rust-patterns
dyn-clonecat-rust-patterns
Lenscat-rust-patterns

Error Customization

RecipeCratesCategories
Anyhowcat-rust-patterns
thisErrorcat-rust-patterns
miettecat-rust-patterns
color-eyrecat-rust-patterns

Error Handling

Functional Programming

RecipeCratesCategories
Compose iterators with itertoolscat-rust-patterns

Rust Idioms

RecipeCratesCategories
Rust idiomscat-rust-patterns

Science Geo

Geo

RecipeCratesCategories
Geosciencecat-science::geo

Science Neuroscience

Neuro

RecipeCratesCategories
Neurosciencecat-science::neuroscience

Science Robotics

Robotics

RecipeCratesCategories
Roboticsrobotics.rscat-science::robotics

Useful Robotics Tools And Libs

RecipeCratesCategories
Open CV
zenohcat-science::robotics
Open Rust Roboticscat-science::robotics
bonsai-btcat-science::robotics

Simulation

Simulation

RecipeCratesCategories
Simulationcat-simulation

Template Engine

Tera

RecipeCratesCategories
Create HTML files from a templateteracat-template-engine

tinytemplate

RecipeCratesCategories
tinytemplatecat-template-engine

Text Editors

IDEs

Text Processing

Regex

RecipeCratesCategories
Longer regex example

String Concat

RecipeCratesCategories
Benchmark

String Parsing

Value Formatting

Value Formatting

RecipeCratesCategories
Value formattingcat-value-formatting

Virtualization

Virtualization

RecipeCratesCategories
Virtualizationcat-virtualization

Visualization

Visualization

RecipeCratesCategories
Visualizationcat-visualization

Wasm

Others

RecipeCratesCategories
wasmer
wasmtime

Yew

RecipeCratesCategories
Yewyewcat-wasm

Web Programming: HTTP Client

APIs

Download

HTTP Clients

RecipeCratesCategories
reqwestreqwestcat-web-programming::http-client
urequreqcat-web-programming::http-client
hyperhypercat-web-programming::http-client

Requests

Web Pr: HTTP Server

actix

RecipeCratesCategories
Actixcat-web-programming cat-web-programming::http-server

axum

RecipeCratesCategories
Axumcat-web-programming cat-web-programming::http-server

Batteries-included frameworks

RecipeCratesCategories
Loco
Rust on Nails

CORS

RecipeCratesCategories
CORScat-web-programming

GraphQL

RecipeCratesCategories
async-graphql

gRPC

RecipeCratesCategories
tonic

hyper

RecipeCratesCategories
hyper

Middleware

RecipeCratesCategories
Towertowercat-web-programming cat-web-programming::http-server
Tower HTTPtower_httpcat-web-programming cat-web-programming::http-server
Alternatives

Other Frameworks

RecipeCratesCategories
Rocketcat-web-programming cat-web-programming::http-server
Leptoscat-web-programming::http-server

Static Website Generators

Web-Programming Websocket

Websocket

RecipeCratesCategories
Low-levelcat-web-programming::websocket
General Purposecat-web-programming::websocket

Contributing

API Documentation

Development Editing

Section
Book editing

Dev Container Docker

Dev Environment Setup

Optional Preprocessors

Publication

Section
Publication

Repo Structure

Topics of Interest

Language

Attributes

Closures

Control Flow

Enums

Section
Enums

Functions

Generics

Iterators

Section
Iterators

Lifetimes

Macros

Section
Macros

Main

Match

Modules

Ownership Borrowing

Rust Install

Simple Data Types

Slices

Section
Slices

Structs

Section
Structs

Traits

Trait Objects

Section
trait-objects

Variables and Constants

Blogs, Podcasts, Meetups

Books

Section
Books

Companies

Example Code

Recipe
example-code

Learning

Section
Rust Learning
Section
Rust Links

Rust Cheatsheets

Architecture

Architecture

RecipeCratesCategories
Architecture

Cloud

AWS

Rust-native Cloud Development

RecipeCratesCategories
Shuttle Cloud Platform

Serverless

Containers

Containers

RecipeCratesCategories
Docker
Docker Compose

Cross Platform

Crux

RecipeCratesCategories
Develop across platforms with Cruxcrux_core

Data Processing

CSV

Dataframes

RecipeCratesCategories
Manipulate data in a tabular formatpolars

Data Engineering

Data Visualization

RecipeCratesCategories
Plot and graph data

Devops

CD/CI

RecipeCratesCategories
CD / CI

Dependency Management

RecipeCratesCategories
deps.rs
Rust Digger

DevOps

RecipeCratesCategories
Daytona

Github Actions

Git Hooks

Release Automation

RecipeCratesCategories
cargo release
release-plz

GPU

GPU

RecipeCratesCategories
rust-gpurust_gpu-github

Scripting

rhai

Written in Rust

Development Tools

RecipeCratesCategories
Compilers
swc
Code editors
lapce
zed
Build tools

Others

Python Tools

RecipeCratesCategories
rustpythoncat-api-bindings
pyOxidizercat-api-bindings
Ruff
uv

Standard Library

Asref

RecipeCrates
AsRefstd

Cow

Derive

Hashmaps

RecipeCrates
Hashmapsstd

Option

Result

RecipeCrates
Resultstd

Smart Pointers

RecipeCrates
Boxstd
Rcstd
RefCellstd

Strings

Vectors

RecipeCrates
Vecstd