shadcn-rs
August 6, 2026 · View on GitHub
egui and iced component set with shadcn/ui aesthetics.
Warning
API STABILITY NOTICE: shadcn-rs API is currently unstable and may change between versions, including breaking changes.
Always pin exact crate versions and review release notes before upgrading.
Overview
- Rust workspace for shadcn-style UI component libraries.
- Two public API styles: props-first (
*Props/ free functions) and builder-first (fluentComponent::new(…).variant(…)chains). - Theming and style packs in
shadcn-commonare built ontwill.
Crates
egui-shadcn— egui components, props-first API (some thin builder wrappers on top of props; seecrates/egui-shadcn/README.md).iced-shadcn— iced components, v1 props-first API (seecrates/iced-shadcn/README.md).iced-shadcn-v2— iced components, v2 builder-first API; does not depend on v1 (seecrates/iced-shadcn-v2/README.md).shadcn-common— shared design tokens, style packs, and backend-agnostic helpers for egui/iced (seecrates/shadcn-common/README.md).
Demos
egui-shadcn — WASM showcase
Full interactive showcase for egui-shadcn (and iced) in the browser:
ferrismind.github.io/shadcn-rs
https://github.com/user-attachments/assets/8a3e7f25-fc51-4434-99d8-b9eb0de99e8f
Source: crates/wasm-demo.
iced-shadcn v1 — desktop apps
These desktop apps use the v1 (iced-shadcn) props-first API and are still under development. See also issue #5.
Nova Code
Minimal VS Code–style editor UI on iced.
https://github.com/user-attachments/assets/04ddafcb-adf1-42fa-bb0e-97676792973b
Zver
Minimal desktop browser using system web engines via wry.
https://github.com/user-attachments/assets/0afa7180-efd5-496e-8f28-5a371fe2a12d
NeuroLang
Local desktop translator (text for now; more formats planned).
https://github.com/user-attachments/assets/e4908f23-5f14-486b-8200-9164f4136322
License
Dual-licensed under MIT OR Apache-2.0 (see workspace Cargo.toml).
Acknowledgements
- egui — immediate-mode GUI framework for the egui-shadcn crate.
- iced — retained-mode GUI framework for the iced-shadcn and iced-shadcn-v2 crates.
- Lucide Icons — icon set used via
lucide-icons. - Radix UI — interaction patterns and accessibility cues.
- shadcn/ui — design language and component inspiration.
- shadcn-svelte — Svelte port of shadcn/ui; reference for component patterns and API shape.