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.