{"id":15038342,"url":"https://github.com/implferris/learnrust","last_synced_at":"2025-05-14T13:08:19.253Z","repository":{"id":236227899,"uuid":"791530964","full_name":"ImplFerris/LearnRust","owner":"ImplFerris","description":"Rust Learning Resources","archived":false,"fork":false,"pushed_at":"2025-04-06T15:59:55.000Z","size":52,"stargazers_count":1632,"open_issues_count":1,"forks_count":167,"subscribers_count":28,"default_branch":"main","last_synced_at":"2025-04-12T14:15:13.495Z","etag":null,"topics":["learn-rust","learning","programming","rust","rust-lang","rust-programming","rust-tutorial"],"latest_commit_sha":null,"homepage":"https://implrust.com","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ImplFerris.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-04-24T22:10:03.000Z","updated_at":"2025-04-12T04:44:18.000Z","dependencies_parsed_at":null,"dependency_job_id":"a14df8ef-b0ed-4b4f-a2b9-bf5640549f36","html_url":"https://github.com/ImplFerris/LearnRust","commit_stats":{"total_commits":33,"total_committers":5,"mean_commits":6.6,"dds":"0.12121212121212122","last_synced_commit":"e28bb61c319c6198b3a588464969f004e4798978"},"previous_names":["implferris/learnrust"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ImplFerris%2FLearnRust","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ImplFerris%2FLearnRust/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ImplFerris%2FLearnRust/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ImplFerris%2FLearnRust/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ImplFerris","download_url":"https://codeload.github.com/ImplFerris/LearnRust/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254149963,"owners_count":22022851,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["learn-rust","learning","programming","rust","rust-lang","rust-programming","rust-tutorial"],"created_at":"2024-09-24T20:38:05.109Z","updated_at":"2025-05-14T13:08:14.237Z","avatar_url":"https://github.com/ImplFerris.png","language":null,"readme":"# List of Resources to learn Rust - Roadmap From Beginner to Advanced Level\n\na curated collection of materials designed to assist learners at various stages of their journey with the Rust.\n\n## 👶Level: Beginner\n\n### Free Books\n  - **[The Rust Programming Language](https://doc.rust-lang.org/book/)** : Start your Rust journey with the book.\n  - **[Rust Development Classes](https://rust-classes.com/)**: Best way to learn Rust is by doing; The book is a collection of examples and exercises.\n  - **[The Rust Programming Language: Experimental Edition](https://rust-book.cs.brown.edu/)** : An experimental branch of the book that supports interactive features like quizzes. It also provides extended explanations of fundamental concepts such as ownership and async.\n  - **[Rust By Example](https://doc.rust-lang.org/rust-by-example/)** : Learn Rust with examples (Live code editor included)\n  - **[Free Rust course developed by the Android team at Google](https://google.github.io/comprehensive-rust/)**: The course is used internally at Google when teaching Rust to experienced software engineers. They typically have a background in C++ or Java. The course covers all aspects of Rust, from basic syntax to generics and error handling. It also includes deep dives on Android, Chromium, bare-metal, and concurrency.\n  - **[Yet Another Rust Resource (YARR!)](https://yet-another-rust-resource.pages.dev/introduction)** : Software engineers who know how to program in a high-level language but aren't familiar with lower-level programming and want to learn to write Rust quickly\n  - **[The Rust Book (Abridged)](https://jasonwalton.ca/rust-book-abridged/)** : condensed version of \"The Rust Programming Language\". If you're already familiar with one or more other programming languages, then you are likely already familiar with a lot of the concepts the book covers, and you might benefit from this shorter version.\n  - **[Idiomatic Rust Snippets](https://idiomatic-rust-snippets.org/)** : Simplified Rust code samples on language fundemantals, design patterns and algorithms.\n\n### Exercises\n  - **[Rustlings](https://github.com/rust-lang/rustlings)** : Small exercises to get you used to reading and writing Rust code!\n  - **[100 Exercises to Learn Rust](https://github.com/mainmatter/100-exercises-to-learn-rust)**: A self-paced course to learn Rust, one exercise at a time.\n  - **[5 Rust Project Ideas For Absolutely Beginner Devs](https://eleftheriabatsou.hashnode.dev/5-rust-project-ideas-for-absolutely-beginners-devs)** : 5 simple yet practical projects that will help you later in bigger projects\n  - **[Solve Advent of Code 2022 with Rust](https://fasterthanli.me/series/advent-of-code-2022)**: a series of programming challenges of increasing difficulty\n  - **[Rustfinity](https://www.rustfinity.com)** : Learn Rust by practice, from beginner-level exercises to advanced challenges\n\n### Videos\n  - **[Let's Get Rusty](https://www.youtube.com/playlist?list=PLai5B987bZ9CoVR-QEIN9foz4QCJ0H2Y8)** : Video series that go through the Rust lang book chapter by chapter\n  - **[Idiomatic Rust in Simple Steps (IRISS)](https://www.youtube.com/playlist?list=PLW2L8KbM0O7aRi_Bt4YE1JuW9EdMs0ztR)** : Step-by-step guide to learning Rust no programming knowledge required\n  - **[Learn Rust Programming - Complete Course 🦀 ](https://www.youtube.com/watch?v=BpPEoZW5IiY)** - By FreeCodeCamp\n  - **[Rust Crash Course Tutorial](https://www.youtube.com/playlist?list=PLPoSdR46FgI412aItyJhj2bF66cudB6Qs)** : This playlist is designed to guide you from the very basics of Rust to its most advanced features.\n  -  **[Rust 101 Crash Course: Learn Rust (6 HOURS!) + 19 Practice Exercises](https://www.youtube.com/watch?v=lzKeecy4OmQ)** : You'll learn Rust from scratch and get to practice your new Rust programming skills with 19 practice exercises!\n   -  **[Introduction to the series | Rust for Beginners](https://www.youtube.com/watch?v=PpWR6zungUk\u0026list=PLlrxD0HtieHjbTjrchBwOVks_sr8EVW1x)** : You'll learn Rust from scratch by the team from Microsoft Developer!\n\n\u003cbr\u003e\n\n## 🥷Level: Intermediate\n\n### 🌐 Web Backend Development with Rust\n  - **[Rust Axum Full Course](https://www.youtube.com/watch?v=XZtlD_m59sM)** : Full Course for Axum: An Awesome Web Framework for Rust. Not too low-level, not too high-level, well-componentized, complete, and with great ergonomics.\n  - **[Build A Full Stack Chatbot in Rust (feat. Leptos \u0026 Rustformers)](https://youtu.be/vAjle3c9Xqc?si=uN1sM48VDOtBglNQ)** : A walkthrough of building a ChatGPT clone using Rust on the frontend and the backend. Quick introduction to the Leptos framework, Rustformers/llm, and open source language models.\n\n### Other Resources\n  - **[Introduction to \"Safe and Secure Coding in Rust: A Comparative Analysis of Rust and C/C++\"](https://luk6xff.github.io/other/safe_secure_rust_book/#introduction-to-safe-and-secure-coding-in-rust-a-comparative-analysis-of-rust-and-cc)**\n\n### Other Project based tutorials\n  - **[Solving distributed systems challenges in Rust](https://www.youtube.com/watch?v=gboGyccRVXI\u0026t=1038s)** : In this stream we work through the fly.io distributed systems challenges (https://fly.io/dist-sys/) in Rust, and solve all the way up to challenge 3c.\n  - **[Learning to Fly series](https://pwy.io/posts/learning-to-fly-update-2024/)** : A beginner-friendly Rust tutorial combining evolution, neural network and genetic algorithm\n  - [**Create Vim like Editor in Rust**](https://www.youtube.com/playlist?list=PL9KpW-9Hl_het1V3_dLhG_0K99a9043ac): Create a TUI application using crossterm\n    \n  - **[impl Rust playlist](https://www.youtube.com/playlist?list=PLqbS7AVVErFhAhQ5s9SWcvxHh4GwsIk_d)** : Different project based tutorials by Jon Gjengset including creating Git from scratch in Rust, BitTorrent client in Rust, Wordle solver in Rust\n\n  - **[hecto: Build Your Own Text Editor in Rust](https://flenker.blog/hecto/)** : This is a series of blog posts that shows you how to build a text editor in Rust.\n\n  - **[Game development with Macroquad](https://mq.agical.se/)**: A game development guide on how to build a shoot'em up game in Rust with Macroquad.\n  - **[Breakout game with Macroquad](https://www.youtube.com/watch?v=xQ9YTY7ZgsI\u0026t=3m02s)**: An easy to follow along video that teaches how to create Breakout game with Macroquad\n\n### Free Books\n  - **[The Little Book of Rust Macros](https://veykril.github.io/tlborm)** : This book is an attempt to distill the Rust community's collective knowledge of Rust macros, the Macros by Example ones as well as procedural macros(WIP).\n\n### Rust in Depth\n  - **[Decrusted Series by Jon Gjengset](https://www.youtube.com/playlist?list=PLqbS7AVVErFirH9armw8yXlE6dacF-A6z)**\n  - **[Crust of Rust Series by Jon Gjengset](https://www.youtube.com/playlist?app=desktop\u0026list=PLqbS7AVVErFiWDOAVrPt7aYmnuuOLYvOa)**\n\n\u003cbr\u003e\n\n## 🧙Level: Advanced\n\n### Free Books\n\n  - **[Rust Atomics and Locks](https://marabos.nl/atomics/foreword.html)** : Provides an excellent overview of low-level concurrency\n  - **[Writing an OS in Rust](https://os.phil-opp.com/)** : Blog series creates a small operating system in the Rust\n  - **[Game development with Fyrox](https://fyrox-book.github.io/introduction.html)** : Fyrox, general purpose game engine that is suitable for any kind of games\n  - **[Build a Lua Interpreter in Rust](https://wubingzheng.github.io/build-lua-in-rust/en/)** : This series of articles introduces the implementation of a Lua interpreter from scratch in the Rust language\n\n### Tutorials\n  - **[Operating System development tutorials in Rust on the Raspberry Pi](https://github.com/rust-embedded/rust-raspberrypi-OS-tutorials)** \n  - **[Implementing TCP in Rust (part 1)](https://www.youtube.com/watch?v=bzja9fQWzdA)**\n  - **[Writing A Wasm Runtime In Rust](https://skanehira.github.io/writing-a-wasm-runtime-in-rust/01_intro.html)**\n  - **[Building a DNS server in Rust](https://github.com/EmilHernvall/dnsguide)**: A guide to writing a DNS Server from scratch in Rust\n  - **[Build your own SQLite](https://blog.sylver.dev/series/build-your-sqlite)**:  Building SQLite-compatible database from scratch\n  - **[Building a search engine from scratch, in Rust](https://jdrouet.github.io/tags/search-engine/)**:  creating a client-side search engine that works seamlessly across platforms\n\n\n### Linux Development\n\n  - **[Linux Kernel Rust Development Environment](https://tomcat0x42.me/linux/rust/2023/04/01/linux-kernel-rust-dev-environment.html)**\n  - **[Linux Kernel Rust Modules](https://tomcat0x42.me/linux/rust/2023/04/07/linux-kernel-rust-modules.html)** \n  - **[Reading from my webcam on linux with v4l2 and rust](https://youtu.be/3t7Z34kHPjU?si=GEvfM40hTHy1OEZP)**\n\n\n\u003cbr\u003e\n\n## Level: None\nThis section contains resources that might contain from beginner to advanced concepts.\n\n## Blog Posts\n  - **[Shuttle Blog Posts](https://www.shuttle.rs/blog/tags/all)**: Teaches different topics (might contain from beginner to advanced level concepts)\n  - **[Log Rocket Posts](https://blog.logrocket.com/tag/rust/)**\n  - **[Rust - Implementing SHA-1](https://www.thespatula.io/rust/rust_sha1/)**\n  - **[Rust - Base64 encoding and decoding](https://www.thespatula.io/rust/rust_base64/)**\n  - **[Rust - Implementing WebSockets](https://www.thespatula.io/rust/rust_websocket/)**\n\n## Reverse Engineering\n  - **[Rust Binary analysis, Feature By Feature](https://research.checkpoint.com/2023/rust-binary-analysis-feature-by-feature/)**\n  - **[Reverse Engineering Rustlang Binaries - A Series](https://brightprogrammer.netlify.app/post/reverse-engineering-rustlang-binaries-0x1-empty-program/)**\n\n## Curated List\n  - **[Embedded Rust](https://github.com/rust-embedded/awesome-embedded-rust)** : curated list of resources related to embedded and low-level programming\n\n## Rust Language Cheat Sheet\n\n  - **[Rust Language Cheat Sheet](https://cheats.rs/)**: A single-page Rust resource for people who like high information density\n  - **[SpeedSheet for Rust](https://speedsheet.io/s/rust)**: This is an interactive Rust cheat sheet. Covers the core Rust programming language. Use the search to get instant answers.\n\n\u003cbr\u003e\n\n## Dark Arts of Rust \n  - **[The Rustonomicon](https://doc.rust-lang.org/nomicon/)**: The book digs into all the awful details that you need to understand when writing Unsafe Rust programs.\n\n## Youtube Channels on Rust\n- [Jeremy Chone](https://youtube.com/@JeremyChone)\n- [Lets Get Rusty](https://youtube.com/@letsgetrusty)\n- [Jon Gjengset](https://youtube.com/@jonhoo)\n- [The Rusty Bits](https://youtube.com/@therustybits)\n- [Code to the Moon](https://youtube.com/@codetothemoon)\n- [CoderSauce](https://www.youtube.com/@CoderSauce)\n- [Brooks Builds](https://youtube.com/@BrooksBuilds)\n- [No boilerplate](https://youtube.com/@NoBoilerplate)\n- [Logan smith](https://youtube.com/@_noisecode)\n- [Chris biscardi](https://www.youtube.com/@chrisbiscardi)\n- [regionaltantrums](https://www.youtube.com/@regionaltantrums)\n- [Tim clicks](https://youtube.com/@timClicks)\n- [Dario](https://www.youtube.com/@dario.lencina)\n- [sphaerophoria](https://www.youtube.com/@sphaerophoria)\n- [Francesco Ciulla](https://youtube.com/@francescociulla)\n- [Semicolon](https://www.youtube.com/@Semicolon10)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fimplferris%2Flearnrust","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fimplferris%2Flearnrust","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fimplferris%2Flearnrust/lists"}