Rust
Rust Typing Practice Chapters
150 exercises across 15 chapters, ordered from basic syntax to advanced patterns. Each section is real Rust code, and your best speed and accuracy are saved per section.
Basic Typing
0/11 completedBeginner
Start with simple Rust typing patterns
Let Statements
Simple Assignments
Mutable Variables
Type Annotations
Numeric Types
Compound Assignments
Simple Operations
Boolean Operations
Const Declarations
Static Declarations
Type Inference
Common Patterns
0/11 completedBeginner
Practice frequently used Rust patterns
Println Macro
Format Macro
String Basics
String Manipulation
Basic Functions
Function Calls
Debug Macro
Assert Macros
Panic Macro
Vec Macro
Macro Rules
Control Flow
0/10 completedBeginner
Master basic control flow syntax
If Expressions
Simple Loops
Match Expressions
Pattern Matching
Range Expressions
Loop Labels
While Let Loops
Advanced For Loops
Match Guards
Mixed Control Flow
Ownership & Borrowing
0/10 completedBeginner
Moves, references, slices, and the borrow checker
Move Semantics
Shared References
Mutable References
Slices
Ownership in Functions
Clone and Copy
Borrow Scopes
Deref Coercion
AsRef and Borrow
Mixed Ownership Practice
Function Patterns
0/10 completedBeginner
Common function syntax patterns
Function Basics
Function Parameters
Return Types
Multiple Returns
Generic Functions
Closures
Function Pointers
Associated Functions
Method Syntax
Function Composition
Struct Patterns
0/10 completedIntermediate
Common struct usage patterns
Struct Definition
Struct Instantiation
Struct Update Syntax
Tuple Structs
Struct Methods
Generic Structs
Derived Traits
Struct Patterns
Struct Visibility
Struct Composition
Enum Patterns
0/10 completedIntermediate
Common enum usage patterns
Enum Basics
Enums with Data
Enum Methods
Option Enum
Result Enum
Enum Matching
Generic Enums
Enum Constants
Enum Variant Patterns
Enum Conversion
Pattern Matching
0/10 completedIntermediate
match, if let, let else, and destructuring
Match Basics
Match Guards
if let
let else
Destructuring Structs
Destructuring Enums
@ Bindings
Slice Patterns
Nested Option and Result
Mixed Pattern Practice
Collection Patterns
0/9 completedIntermediate
Common collection usage patterns
Vectors
HashMaps
Strings
Binary Heaps
Linked Lists
BTree Maps
BTree Sets
Vec Deques
Hash Sets
Iterators & Closures
0/10 completedIntermediate
Adaptors, consumers, and closure captures
map, filter, collect
Closure Captures
fold and sum
enumerate and zip
chain, rev, take, skip
find, position, any, all
filter_map and flat_map
Custom Iterator
Returning impl Iterator
Mixed Iterator Practice
Error Handling
0/10 completedIntermediate
Common error handling patterns
Result Type
Option Type
Panic
Unwrap
Expect
Map and Then
Error Handling
Custom Errors
Result Combinators
Handling Multiple Errors
Trait Patterns
0/10 completedAdvanced
Common trait usage patterns
Trait Basics
Default Implementations
Trait Bounds
Trait Objects
Supertraits
Trait Aliases
Trait Implementations
Trait Conflicts
Trait Extensions
Trait Usage
Lifetime Patterns
0/10 completedAdvanced
Common lifetime annotation patterns
Lifetime Basics
Multiple Lifetimes
Lifetime Elision
Static Lifetime
Lifetime Bounds
Lifetime Annotations
Lifetime Variance
Lifetime Coercion
Lifetime Inference
Lifetime Usage
Modules & Std
0/9 completedIntermediate
Organising code and leaning on the standard library
mod, pub, and use
Option Combinators
HashMap Entry API
Box, Rc, and RefCell
Reading Files
Environment and Args
Derive Macros
String Methods
Mixed Std Practice
Concurrency
0/10 completedAdvanced
Threads, shared state, channels, and scoped threads
