Book description
Adopt the Rust programming language by learning how to build fully functional web applications and services and address challenges relating to safety and performance
Key Features
- Build scalable web applications in Rust using popular frameworks such as Actix, Rocket, and Warp
- Create front-end components that can be injected into multiple views
- Develop data models in Rust to interact with the database
Book Description
Are safety and high performance a big concern for you while developing web applications?
While most programming languages have a safety or speed trade-off, Rust provides memory safety without using a garbage collector. This means that with its low memory footprint, you can build high-performance and secure web apps with relative ease.
This book will take you through each stage of the web development process, showing you how to combine Rust and modern web development principles to build supercharged web apps.
You'll start with an introduction to Rust and understand how to avoid common pitfalls when migrating from traditional dynamic programming languages. The book will show you how to structure Rust code for a project that spans multiple pages and modules. Next, you'll explore the Actix Web framework and get a basic web server up and running. As you advance, you'll learn how to process JSON requests and display data from the web app via HTML, CSS, and JavaScript. You'll also be able to persist data and create RESTful services in Rust. Later, you'll build an automated deployment process for the app on an AWS EC2 instance and Docker Hub. Finally, you'll play around with some popular web frameworks in Rust and compare them.
By the end of this Rust book, you'll be able to confidently create scalable and fast web applications with Rust.
What you will learn
- Structure scalable web apps in Rust in Rocket, Actix Web, and Warp
- Apply data persistence for your web apps using PostgreSQL
- Build login, JWT, and config modules for your web apps
- Serve HTML, CSS, and JavaScript from the Actix Web server
- Build unit tests and functional API tests in Postman and Newman
- Deploy the Rust app with NGINX and Docker onto an AWS EC2 instance
Who this book is for
This book on web programming with Rust is for web developers who have programmed in traditional languages such as Python, Ruby, JavaScript, and Java and are looking to develop high-performance web applications with Rust. Although no prior experience with Rust is necessary, a solid understanding of web development principles and basic knowledge of HTML, CSS, and JavaScript are required if you want to get the most out of this book.
Table of contents
- Rust Web Programming
- Contributors
- About the author
- About the reviewer
- Preface
- Section 1:Setting Up the Web App Structure
- Chapter 1: Quick Introduction to Rust
- Chapter 2: Designing Your Web Application in Rust
- Section 2:Processing Data and Managing Displays
- Chapter 3: Handling HTTP Requests
- Chapter 4: Processing HTTP Requests
- Chapter 5: Displaying Content in the Browser
- Section 3:Data Persistence
- Chapter 6: Data Persistence with PostgreSQL
- Chapter 7: Managing User Sessions
- Chapter 8: Building RESTful Services
- Section 4:Testing and Deployment
- Chapter 9: Testing Our Application Endpoints and Components
- Chapter 10: Deploying Our Application on AWS
- Chapter 11: Understanding Rocket Web Framework
- Appendix A: Understanding the Warp Framework
-
Assessments
- Chapter 1, Quick Introduction to Rust
- Question 1
- Answer
- Question 2
- Answer
- Question 3
- Answer
- Question 4
- Answer
- Question 5
- Answer
- Question 6
- Answer
- Question 7
- Answer
- Question 8
- Answer
- Question 9
- Answer
- Question 10
- Answer
- Chapter 2, Designing Your Web Application in Rust
- Question 1
- Answer
- Question 2
- Answer
- Question 3
- Answer
- Question 4
- Answer
- Question 5
- Answer
- Question 6
- Answer
- Chapter 3, Handling HTTP Requests
- Question 1
- Answer
- Question 2
- Answer
- Question 3
- Answer
- Question 4
- Answer
- Question 5
- Answer
- Question 6
- Answer
- Question 7
- Answer
- Chapter 4, Processing HTTP Requests
- Question 1
- Answer
- Question 2
- Answer
- Question 3
- Answer
- Question 4
- Answer
- Question 5
- Answer
- Chapter 5, Displaying Content in the Browser
- Question 1
- Answer
- Question 2
- Answer
- Question 3
- Answer
- Question 4
- Answer
- Question 5
- Answer
- Chapter 6, Data Persistence with PostgreSQL
- Question 1
- Answer
- Question 2
- Answer
- Question 3
- Answer
- Question 4
- Answer
- Chapter 7, Managing User Sessions
- Question 1
- Answer
- Question 2
- Answer
- Question 3
- Answer
- Question 4
- Answer
- Question 5
- Answer
- Question 6
- Answer
- Chapter 8, Building RESTful Services
- Question 1
- Answer
- Question 2
- Answer
- Question 3
- Answer
- Question 4
- Answer
- Question 5
- Answer
- Question 6
- Answer
- Question 7
- Answer
- Chapter 9, Testing Our Application Endpoints and Components
- Question 1
- Answer
- Question 2
- Answer
- Question 3
- Answer
- Question 4
- Answer
- Question 5
- Answer
- Question 6
- Answer
- Question 7
- Answer
- Why subscribe?
- Other Books You May Enjoy
Product information
- Title: Rust Web Programming
- Author(s):
- Release date: February 2021
- Publisher(s): Packt Publishing
- ISBN: 9781800560819
You might also like
book
Rust Web Programming - Second Edition
Use the Rust programming language to build fully functional web applications with async Rust to amplify …
book
Programming WebAssembly with Rust
WebAssembly fulfills the long-awaited promise of web technologies: fast code, type-safe at compile time, execution in …
book
Rust Programming Cookbook
Practical solutions to overcome challenges in creating console and web applications and working with systems-level and …
book
Rust Web Development with Rocket
Explore the world of Rocket-fueled web application development and the power of the Rust programming language …