Other Resources

Below is a currated list of resources to help get you started with Rust development and firmware development in Rust.

Websites

LinkDescription
crates.ioAll open source crates that have been published.
docs.rsDocumentation for all open source crates on crates.io. Documentation links are typically found on crates.io, but link here.
bookshelf.rsA curated list of great Rust books.
lib.rsAn opinionated version of crates.io.
blessed.rsA curated list of crates for common use-cases.

Repositories

Other repositories related to the patina project.

RepositoryDescription
patinaA pure-Rust implementation of a UEFI DXE Core.
patina-mtrrMemory Type Range Registers for x86_64.
patina-pagingPaging implementation.
patina-readiness-toolPatina DXE Core Platform Compatibility Verifier
patina-dxe-core-qemuReference QEMU platform DXE Core implementations.
patina-qemuReference QEMU EDK II platform(s) for X64 and AARCH64
r-efiUEFI reference specification protocol constants and definitions.

Books

Great books to read to get started with developing bare metal code using Rust!

BookDescription
Rust BookThe Rust maintained book for beginners.
Writing an OS in rustA great example and tutorial for bare-metal programming. The Rust UEFI DXE Core project got started following this book.
The embedded rust bookGeneral Getting started guide for embedded Rust development.
Rust API GuidelinesRecommendations on how to design and present APIs.