Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Learn Full Stack Rust Programming using AXUM, Yew, and SQLx
Rating: 3.8 out of 5(61 ratings)
386 students

Learn Full Stack Rust Programming using AXUM, Yew, and SQLx

Frontend and Backend Rust programming: We will build a Rust Web API using AXUM and Postgres and frontend using Yew
Created byEric Mabo
Last updated 12/2024
English

What you'll learn

  • Why use Rust programming language for full stack web app development in 2023 and beyond?
  • Rust language basics like variables, functions, data types, control flow, structs, enums, using json, hashmaps, modules, ownership and borrowing in rust
  • Build a fully functional CRUD API using AXUM, SQLx and Postgress
  • Build a fully functional Frontend in rust using the Yew framework (Yew looks like ReactJS, but in Rust)
  • Following popular demand: link to source code provided at the end of the course.

Course content

3 sections45 lectures5h 0m total length
  • Introduction2:16

    The videos goes over the agenda and discusses why you may want to consider learning and using rust

  • Showcase what we will be building2:55

    Build a full stack app with a Yew frontend and an Axum backend, connected to Postgres, exposing a products API to add, list, and delete products.

  • Installing Rust1:06

    Learn how to install Rust from rust-lang.org, choose your system (Windows, Mac, or WSL), verify the installation with rustc --version, and update with rustup update.

  • Setting up VS Code3:46

    Set up VS Code for Rust development by installing Crates extension, Rust Analyzer, and Tonda client extensions, then enable automatic builds with cargo watch and run on change.

  • Rust Variables and Functions 16:14
  • Rust Variables and Functions 24:50
  • Rust Modules2:55

    Learn how to refactor a rust project using modules, splitting code into variables and functions, making the run method public, and wiring modules in main to compile and run.

  • Rust data Types2:48

    Explore Rust data types, including scalar types like integers, floats, booleans, and characters, with size variations and signed or unsigned representations, and note how type choices affect performance and memory.

  • Compound Data Types5:25

    Explore Rust compound data types by comparing tuples and arrays, learning fixed-length storage, type constraints, and element access to understand how to combine data.

  • Vectors6:57

    Create and manipulate vectors by making them mutable, pushing values, and printing results. Learn how vectors enforce homogeneous types, how to get length, and how to pop items.

  • Rust HashMaps7:38

    Learn to use Rust hash maps to store key value pairs, import std hash map, insert California and Florida, convert with to_string, then print with the print line macro.

  • HashMaps 22:08
  • If, Else, match7:44
  • For and While Loops8:11

    Learn how to use for loops, ranges, and while loops in Rust to iterate over scores, print results, and count down from ten, reinforcing core control flow concepts.

  • Rust Structs7:13

    Explore Rust structs and tuple-like forms, define a car with make, model, and year, and a location with latitude and longitude, then print fields using println! and dot notation.

  • Rust Structs: Impl6:48

    Learn how to implement methods on a Rust struct using impl, including a new constructor and a describe method that returns a formatted car description.

  • Working with JSON: serde_json10:42

    Explore working with json in Rust using serde_json to parse api data, create and access nested structures like address and languages and country, and print specific fields.

  • Understanding Rust Ownership and Borrowing9:38

    Master Rust ownership and borrowing in full stack development with axum, yew, and sqlx, recognizing that values have a single owner, drop at scope, and can be borrowed via references.

Requirements

  • Basic software programming skills in any programming language
  • Familiarity with Javascript, Typescript or Python is helpful, but not a requirement

Description

  1. You will build a full-stack web app using the rust programming language. We will be building a fully functional CRUD Server API using AXUM, SQLx, and Postgres. Then we will build a fully functional frontend in rust using the Yew framework (Yew looks like ReactJS but in Rust). We will then connect the front end and the back end to run from the same port/URL. You will learn how to create Yew components, routing, create forms and handle GET and POST requests using the rust reqwest crate in the front end. This course is good for developers who already know at least one programming language and have some web development experience. It is not a course for folks who are completely new to programming.

  2. Rust is the most loved programming language for the past several years according to StackOverflow. All the big tech companies are now using rust and a lot of startups are using rust. More so, a lot of the newer blockchain projects are building with rust. The rust programming language is growing very rapidly.

  3. This course will help you start developing in rust very fast, as you will build a real full-stack app. You can use the concepts to expand your rust dev options.

  4. The course is divided into 3 main sections. Section 1 is an intro to rust. You can skip this section if you are already familiar with the material. Section 2 will cover the Server API dev using AXUM and section 3 covers developing frontend apps using the popular Yew framework.

  5. Full source code provided at the end of the course.

Who this course is for:

  • This course is for software engineers who would like to learn the rust programming language, by building a real world project