
Software Engineering Radio - the podcast for professional software developers SE Radio 713: Héctor Ramón Jiménez on Building a GUI library in Rust
Mar 25, 2026
Héctor Ramón Jiménez, creator of iced and longtime GUI and rendering developer, talks about building a cross-platform GUI toolkit in Rust. He covers iced’s Elm-inspired architecture, rendering pipeline from elements to pixels, GPU and CPU backends, async task handling to avoid UI blocking, headless testing, end-to-end test recorders and emulators, and the challenges of mobile support.
AI Snips
Chapters
Transcript
Episode notes
From State To Pixels In The Iced Runtime
- Iced's runtime loop creates a window, builds a widget tree from view(state), runs layout, and the renderer translates widget state into GPU draw commands.
- Borrow rules force view recomputation after updates, preventing state/view concurrency bugs.
Run Long Tasks As Background Futures
- Offload long-running work from update to background tasks by returning futures so the UI thread remains responsive.
- Iced's runtime runs returned tasks on other threads and then sends completion messages back to update.
Underused Widgets Enable Advanced UI Patterns
- Iced includes niche features like a shader widget for 3D and a Sensor widget to detect when items appear on screen.
- Sensor enables patterns such as infinite scrolling by notifying when elements are about to become visible.
