Batteries included for iced.
Production-ready design tokens, layouts, components, and platform APIs that turn iced into a complete desktop framework. Ship polished apps faster with 30+ pre-built widgets, consistent theming, and cross-platform system integration.
- Design Tokens: Tailwind/Chakra-inspired design tokens with preset light/dark themes
- Theme Bridge: Adapters that wire tokens into iced
Theme+ widgetStyleSheets - Layouts: Shells, split panes, stacks (HStack/VStack), overlay managers, and responsive rules
- Components: 30+ pre-built widgets including buttons, inputs, cards, modals, tabs, and more
- Platform Integration: Unified APIs for system tray, notifications, hotkeys, and window management
Add to your Cargo.toml:
[dependencies]
iced_plus = "0.1"Or pick individual crates:
[dependencies]
iced_plus_tokens = "0.1" # Design tokens only
iced_plus_theme = "0.1" # Theme bridge
iced_plus_layouts = "0.1" # Layout primitives
iced_plus_components = "0.1" # UI components
iced_plus_platform = "0.1" # Desktop platform APIsuse iced_plus::prelude::*;
// Use design tokens for consistent styling
let theme = Theme::light();
// Build layouts with stacks
let content = VStack::new()
.push(Button::primary("Click me"))
.push(TextInput::new("Enter text..."))
.spacing(Spacing::md());| Feature | Status | Notes |
|---|---|---|
| Design Tokens | Stable | Full token system with light/dark presets |
| Theme Bridge | Stable | Adapts tokens to iced styling |
| Layouts | Stable | HStack, VStack, AppShell, Split, Responsive |
| Core Components | Stable | Button, Text, Input, Card, Badge, etc. |
| Audio Controls UI | Stable | UI controls only |
| Video Controls UI | Stable | Audio controls + fullscreen button |
| Audio/Video Player | Not Implemented | UI only - requires manual backend integration (see rodio example) |
| Audio/Video Recorder | Experimental | UI ready, needs platform mic/camera integration |
| WebView | Experimental | System browser works, embedded needs wry feature |
| System Tray | Stable | Cross-platform tray icon and menu |
| Notifications | Stable | Native OS notifications |
| Hotkeys | Stable | Global hotkey registration |
Note: Audio and video playback is not built-in. The library provides UI controls and state management, but actual media playback must be integrated manually using libraries like rodio for audio. See the kitchen sink example for reference implementations.
| Crate | Description |
|---|---|
iced_plus |
Umbrella crate that re-exports all sub-crates |
iced_plus_tokens |
Design tokens: colors, typography, spacing, elevation |
iced_plus_theme |
Theme bridge adapting tokens to iced styling |
iced_plus_layouts |
Layout primitives: stacks, shells, split panes |
iced_plus_components |
30+ pre-built UI components |
iced_plus_platform |
Desktop platform APIs: tray, notifications, hotkeys |
- User Guide - Comprehensive documentation
- API Reference - Generated Rust docs
- Examples - Working code examples
| Platform | Status |
|---|---|
| Linux (X11) | Supported |
| Linux (Wayland) | Supported |
| macOS | Supported |
| Windows | Supported |
Run the kitchen sink demo to see all features:
cargo run -p kitchen_sink
# With optional features
cargo run -p kitchen_sink --features audio,webcam,webviewContributions are welcome! Please see CONTRIBUTING.md for guidelines.
This project is licensed under the MIT License - see the LICENSE file for details.