🧰 Dioxus Standard Library 🚀

A platform agnostic library for supercharging your productivity with Dioxus.

Crates.io version Download docs.rs docs

This library is still under development. Expect breaking changes!


dioxus-std is a Dioxus standard library that provides abstractions for your Dioxus app. Abstractions included are notifications, clipboard, and more to come.

Current Features - [x] Geolocation - (wasm, Windows) - [x] Clipboard - (Desktop) - [x] Notifications - (Desktop) - [x] Utility Hooks - usechannel - (any) - userw - (any) - useprefererredcolor_scheme - (wasm)

Planned Features - [ ] Camera - [ ] WiFi - [ ] Bluetooth

```rust fn app(cx: Scope) -> Element { let geolocator = hooks::initgeolocator(cx, PowerMode::High).unwrap(); let coords = usegeolocation(cx);

match coords {
  Ok(coords) => {
    render! { p { format!("Latitude: {} | Longitude: {}", coords.latitude, coords.longitude) } }
  }
  Err(Error::NotInitialized) => {
    render! { p { "Initializing..." }}
  }
  Err(e) => {
    render! { p { "An error occured {e}" }}
  }
}

} ```

Platform Support

Currently dioxus-std primarily supports desktop targets. It is planned to support all of Dioxus' targets in the future.

On linux you need the x11 library to use the clipboard abstraction: sudo apt-get install xorg-dev

Installation

You can add dioxus-std to your application by adding it to your dependencies. toml [dependencies] dioxus-std = { version = "0.2.0", features = [] }

License

This project is licensed under the [MIT license].

Every contribution intentionally submitted for inclusion in dioxus-std by you, shall be licensed as MIT, without any additional terms or conditions.