UI
This crate contains all shared components for the workspace. This is a great place to place any UI you would like to use in multiple platforms like a common Button
or Navbar
component.
ui/
├─ src/
│ ├─ lib.rs # The entrypoint for the ui crate
│ ├─ hero.rs # The Hero component that will be used in every platform
│ ├─ echo.rs # The shared echo component that communicates with the server
│ ├─ navbar.rs # The Navbar component that will be used in the layout of every platform's router
Dependencies
Since this crate is shared between multiple platforms, it should not pull in any platform specific dependencies. For example, if you want to use the web_sys
crate in the web build of your app, you should not add it to this crate. Instead, you should add platform specific dependencies to the web, desktop, or mobile crates.