I'm struggling to find the time to learn Rust at the moment. Instead of giving up entirely, I try and build something super simple each day to the momentum going.
Each day's project is basic enough that I can finish it in about 30 minutes.
I come from a typescript background, so the majority of my understanding will come from translating typescript concepts over.
- 💯 100 Projects in 100 Days with Vivian Aranha
- 🪴 Rust Adventure with Chris Biscardi
- 👌 Zero To Production In Rust with Luca Palmieri
- 🖥️ Tauri Tutorials with Christian Pavilonis
- ⚙️ Rust for TypeScript Developers with The Primeagen
- 🚀 Building web APIs with Paris Liakos
- Day 1 - Hello Rust 💯
- Day 2 - Temperature Converter 💯
- Day 3 - Simple Calculator 💯
- Day 4 - Guessing Game 💯
- Day 5 - Word Counter 💯
- Day 6 - BMI Calculator 💯
- Day 7 - Palindrome Checker 💯
- Day 8 - Fibonacci Sequence Generator 💯
- Day 9 - Prime Number Checker 💯
- Day 10 - Todo List 💯
- Day 11 - Timer 💯
- Day 12 - Rock Paper Scissors 💯
- Day 13 - JSON Parser 💯
- Day 14 - File Reader 💯
- Day 15 - Memory Management 💯
- Day 16 - String Manipulator 💯
- Day 17 - Basic CRUD 💯
- Day 18 - Banking App 💯
- Day 19 - Clap 🪴
- Day 20 - Error Calculator 💯
- Day 21 - Custom Error Calculator 💯
- Day 22 - State Machine 💯
- Day 23 - Digital Garden (1/3) 🪴
- Day 24 - Digital Garden Errors (2/3) 🪴
- Day 25 - Digital Garden Testing (3/3) 🪴
- Day 26 - Cli Chat App 💯
- Day 27 - Logger 💯
- Day 28 - Actix Web Server (1.1 - 3.6 👌)
- Day 29 - Actix Web Forms (3.7 👌)
- Day 30 - Database (3.8 - 3.11 👌)
- Day 31 - Telemetry (4.1 - 4.5.10 👌)
- Day 32 - Telemetry ( 4.5.11 - 4.6 👌)
- Day 33 - Deploy ( 4.6 -5.1 👌)
- Day 34 - Hello Tauri 🖥️
- Day 35 - Tauri Notes App - create/read/update 🖥️
- Day 36 - Tauri Notes App - delete/rename 🖥️
- Day 37 - Tauri Notes App - menubar 🖥️
- Day 38 - Tauri Notes App - multiwindow support 🖥️
- Day 39 - Tauri Notes App - shortcuts 🖥️
- Day 40 - Tauri Notes App - tags (and SQLite) 🖥️
- Day 41 - Tauri Notes App - fuzzy finder 🖥️
- Day 42 - Iterators and Enums ⚙️
- Day 43 - Options ⚙️
- Day 44 - Results & Error Handling ⚙️
- Day 45 - Traits ⚙️
- Day 46 - Collision detection app ⚙️
- Day 47 - The Rocket Framework 🚀
- Don't use refernces, copy and clone everything. #overwhelm
- When starting to learn Rust, only focus on structs, vectors, iteration, Result and Option. #overwhelm
- Learn Rust by domain instead of by features #direction
1 Know It · I know what it is
2 Use It · Can use it without referencing the docs or examples
3 Gotchas · Understand the gotchas, pitchfalls, and common mistakes around it
| Concept | Know It | Use It | Gotchas |
|---|---|---|---|
| Structs | ✅ | ⬜ | ⬜ |
| Vectors | ✅ | ⬜ | ⬜ |
| Iteration | ✅ | ⬜ | ⬜ |
| Result | ✅ | ⬜ | ⬜ |
| Option | ✅ | ⬜ | ⬜ |
| async executors | ⬜ | ⬜ | ⬜ |
| locks and atomics | ⬜ | ⬜ | ⬜ |
| message passing via channels | ⬜ | ⬜ | ⬜ |
| logging and tracing | ⬜ | ⬜ | ⬜ |
| error handling | ✅ | ⬜ | ⬜ |
| error reporting | ⬜ | ⬜ | ⬜ |
| Doc-tests | ⬜ | ⬜ | ⬜ |
| Actix | ✅ | ⬜ | ⬜ |
| Rocket | ✅ | ⬜ | ⬜ |
| Diesel | ✅ | ⬜ | ⬜ |
| Sqlx | ⬜ | ⬜ | ⬜ |
| Sea-orm | ⬜ | ⬜ | ⬜ |