Free ยท 365 days ยท 2 hours a day
Learn Rust the way a PHP developer thinks.
A daily, structured path from Laravel to production Rust: lessons that compare every idea to PHP, exercises checked by cargo test, quizzes, and a tracker that keeps you consistent.
Same logic, two languages
function total(array $items): int {
$sum = 0;
foreach ($items as $item) {
$sum += $item['price'] * $item['qty'];
}
return $sum;
}
fn total(items: &[Item]) -> u64 {
items.iter().map(|i| i.price * i.qty).sum()
}
By Day 31 you'll write the second one without thinking, and know why it can't crash on a missing key.
How every day works
One session, same shape every day. Consistency beats intensity: 2 focused hours daily for a year turns a PHP developer into a Rust engineer.
Read the lesson
Every concept is explained through what you already know: Composer โ Cargo, arrays โ Vec and HashMap, null โ Option, exceptions โ Result.
Make the tests pass
Each day has exercises with real tests. Replace the todo!()s until cargo test is green, like a code review that never gets tired.
Take the quiz
A short quiz checks you actually understood it. Your scores are saved, and weak days go into a review queue.
Track the habit
Your own schedule, streaks, a heatmap, milestones with projected dates, and a journal of everything you learned.
The curriculum
Five phases, each ending with a real project for your portfolio. The projects use what PHP developers already know (logs, invoices, payment gateways) so your experience counts.
- Phase 1Days 1โ30
Foundations
Cargo, types, functions, ownership, borrowing, structs, enums, error handling, traits and testing.
Project: logsnap: an NGINX access-log analyzer CLI
- Phase 2Days 31โ60
Intermediate Rust
Iterators, closures, smart pointers, threads, async with Tokio, serde, and publishing a crate.
Project: logsnap v1.0, published on crates.io
- Phase 3Days 61โ100
Backend Rust, Professional Level
Axum, SQLx and Postgres, auth, multi-tenancy, payment-gateway webhooks, Docker and deployment.
Project: Ledgerly: a multi-tenant invoicing API
- Phase 4Days 101โ120
Job-Ready
A second production project, open-source PRs, rรฉsumรฉ, and mock interviews.
Project: payhook: a payment-webhook relay with a Laravel client
- Phase 5Days 121โ365
Advanced โ Expert
Performance, macros, unsafe, distributed systems, and a specialization of your choice.
Project: A distributed job queue or key-value store
Questions
Is it really free?+
Yes. No trial, no card, no paid tier. Every resource the course depends on is free too.
Do I need to know any Rust?+
No. It starts from installing Rust. You should be comfortable with PHP (or a similar backend language), Git and the terminal.
How much time does it take?+
Two hours a day: about 60 minutes of lesson, 50 of practice, and 10 to log your progress. You pick the time of day.
Why GitHub sign-in?+
Because the exercises live in a GitHub template repository. You'll commit your work every day, and that green contribution graph becomes evidence for employers.
Are all 365 lessons available?+
New lessons are published every week, ahead of the learners. Days 1โ7 are available now, and the full day-by-day plan is visible from the start.
Day 1 takes 2 hours. Start today.
Install Rust, write your first program and learn to read the compiler's errors.