Guide
tauri-plugin-widgets renders home-screen and desktop widgets from one declarative JSON config across Android, iOS, macOS, Windows, and Linux.

App code calls setWidgetConfig → plugin host writes shared storage → native renderers (Glance, WidgetKit, embedded desktop widget.html, Adaptive Cards) read and draw. On desktop you do not install widget.html yourself for the default path — see Desktop webview.
Full diagram + action sequence: Concepts → Architecture flowchart.
What it is
- Shared widget IR (
WidgetConfig/WidgetElement) defined in Rust, generated for TypeScript - Platform backends that map that IR to Glance, SwiftUI, HTML, or Adaptive Cards
- Host APIs for config, key/value data, actions, diagnostics, desktop windows
What it is not
- A visual designer
- A guarantee that every extended element looks identical everywhere — see Core vs extended
Path
- Install
- First widget (desktop)
- Concepts · Transport
- Platform setup when you need a native surface
- Elements · Showcase
Contributor docs: Contributing.
