Frontend
The frontend is a Rust WebAssembly application written using the Yew framework. It is deployed as the main website for builds.rs. It talks to the backend using a REST API, and offers capabilities to search and explore crates, versions and artifacts for each. Styling is done using Tailwind CSS.
Interactions
graph BT frontend[Frontend] backend[Backend] storage[Storage] frontend --> backend frontend --> storage click backend "./backend.html" click storage "./storage.html"
The frontend mainly needs to interact with the backend's REST API. For artifact downloads, they may be performed directly from the storage service using a redirect from the backend. The frontend may also receive the ability to do server-side rendering at some point.
Dependencies
graph BT frontend[buildsrs_frontend] common[buildsrs_common] frontend --> common click frontend "/rustdoc/buildsrs_frontend" click common "/rustdoc/buildsrs_common"
The frontend is implemented in the buildsrs_frontend crate. It uses the buildsrs_common crate for shared data types between it and the backend.