Draft:Iced (GUI library)
Rust GUI library
From Wikipedia, the free encyclopedia
Iced is a cross-platform GUI library for the Rust programming language, which emphasizes simplicity and type safety.[1][2] It was created by Héctor Ramón Jiménez in 2019 and is inspired by Elm and The Elm Architecture.[3] Rather than wrapping native platform widgets, Iced uses its own rendering pipeline. It is most notably used as the GUI foundation for System76's COSMIC desktop environment.[2][4][5]
Review waiting, please be patient.
This may take 2 months or more, since drafts are reviewed in no specific order. There are 4,291 pending submissions waiting for review.
Where to get help
How to improve a draft
You can also browse Wikipedia:Featured articles and Wikipedia:Good articles to find examples of Wikipedia's best writing on topics similar to your proposed article. Improving your odds of a speedy review To improve your odds of a faster review, tag your draft with relevant WikiProject tags using the button below. This will let reviewers know a new draft has been submitted in their area of interest. For instance, if you wrote about a female astronomer, you would want to add the Biography, Astronomy, and Women scientists tags. Editor resources
Reviewer tools
|
Submission declined on 9 April 2026 by ScalarFactor (talk).
Where to get help
How to improve a draft
You can also browse Wikipedia:Featured articles and Wikipedia:Good articles to find examples of Wikipedia's best writing on topics similar to your proposed article. Improving your odds of a speedy review To improve your odds of a faster review, tag your draft with relevant WikiProject tags using the button below. This will let reviewers know a new draft has been submitted in their area of interest. For instance, if you wrote about a female astronomer, you would want to add the Biography, Astronomy, and Women scientists tags. Editor resources
This draft has been resubmitted and is currently awaiting re-review. |
Comment: Primary sources and routine coverage like update announcements do not establish notability. ScalarFactor (talk) 22:11, 9 April 2026 (UTC)
| Iced | |
|---|---|
| Developers | Héctor Ramón Jiménez and contributors |
| Initial release | September 5, 2019 |
| Stable release | 0.14.0
/ December 7, 2025 |
| Written in | Rust |
| Operating system | Cross-platform (Windows, macOS, Linux, Web) |
| Type | Widget toolkit |
| License | MIT License |
| Website | iced |
| Repository | github |
History
Iced originated as an attempt to bring the simplicity of Elm and The Elm Architecture into Coffee, a 2D game engine Jiménez was developing in Rust.[1] The core of the library was implemented during May 2019 as a user interface module within Coffee. The first alpha version was released as a renderer-agnostic GUI library, which did not include its own renderer and was instead implemented on top of ggez, a Rust game library.[1]
Since then, the focus shifted towards providing a batteries-included, end-user-oriented GUI library while keeping its ecosystem modular.[1] The name "Iced" was chosen simply because Jiménez enjoys iced coffee.[3]
In 2022, System76 announced that its new COSMIC desktop environment would use Iced instead of GTK.[4][2][5] Development of Iced has been sponsored by the Cryptowatch team at Kraken.[6]
Architecture
Iced's architecture is based on The Elm Architecture, which splits an application into four concepts: state, messages, update logic, and view logic.[7] The state serves as the single source of truth for the application. The view reads the state and constructs the user interface, but cannot modify the state directly. Instead, user interactions generate messages, which are passed to the update function to modify the state accordingly.[7]
Iced also introduces subscriptions, which allow applications to listen for external events such as elapsed time or system events and send messages in response.[7]
Version 0.14 introduced time-travel debugging, allowing developers to step backward and forward through an application's state history.[8][9]
Rendering
Iced uses wgpu as its default rendering backend for GPU-accelerated graphics, supporting Vulkan, Metal, DirectX 12, OpenGL and OpenGL ES.[10] If no compatible GPU device is available, Iced falls back to tiny-skia for software rendering.[10] The rendering backend can be selected manually through the library's feature flags.[10]
System76 engineer Jeremy Soller developed iced-dyrend, a dynamic renderer that determines at runtime whether to use GPU rendering via wgpu or software rendering via tiny-skia. This dynamic renderer was later integrated into the Iced toolkit itself.[11]
Notable uses
The most prominent user of Iced is System76's COSMIC desktop environment, which adopted the toolkit in 2022 after evaluating it against GTK.[4][2] COSMIC is a desktop environment for Linux written entirely in Rust, and uses Iced for its applications including a text editor, terminal emulator, file manager, and settings application.[12]
Other notable applications built with Iced include Sniffnet, a cross-platform network traffic monitor[13] and Kraken's desktop trading application.[6]


- provide significant coverage: discuss the subject in detail, not just brief mentions or routine announcements;
- are reliable: from reputable outlets with editorial oversight;
- are independent: not connected to the subject, such as interviews, press releases, the subject's own website, or sponsored content.
Please add references that meet all three of these criteria. If none exist, the subject is not yet suitable for Wikipedia.