An agent skill for building cross-platform GUI applications in Rust with the iced framework (The Elm Architecture).
- The four TEA concepts: State / Messages / Update / View
- Built-in widgets, layout (
column/row/container/stack/grid), sizing & alignment - Tasks (
Task::perform,Task::sip,batch,map,abortable) and Subscriptions (time::every,keyboard::listen,event::listen) - Theming & styling —
Theme,Palette, widgetstyleclosures, and the production-gradeCatalogpattern for custom widgets - Custom widgets — implementing
Widget, operations, overlays,Canvas, custom shaders - Architecture — screen composition via
Screen/Actionenums,Messagedesign, project layout - Real-world patterns distilled from Halloy and
icebreaker:
daemonmulti-window,pane_gridlayouts,Catalog-based theming, streaming boot withTask::sip - Anti-patterns — 14 common mistakes and how to avoid them
SKILL.md # entry point: when-to-use, quick start, rules of thumb, index
references/
widgets.md # widget inventory + builder idioms
tasks-subscriptions.md # Task + Subscription patterns
styling-theming.md # Theme, Palette, style closures
custom-widgets.md # implementing Widget, Catalog, operations, overlays
architecture.md # scaling apps, screen composition, layout
real-world.md # patterns from Halloy & icebreaker
anti-patterns.md # common mistakes
With an agent that supports the skills ecosystem:
npx skills add <your-owner>/iced-skillOr copy this directory into your agent's skills folder (e.g. ~/.agents/skills/iced/).
Grounded in the iced source tree (examples, core/, widget/, runtime/), the official
book, docs.rs/iced, and the architecture of Halloy and icebreaker.