iced-rs/iced

A cross-platform GUI library for Rust, inspired by Elm

View on GitHub ↗Jump to charts ↓Open shareable report →

Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 12 minutes ago
Added to GitGenius on June 28th, 2026
Created on July 15th, 2019
Open Issues & Pull Requests: 509 (+0)
GitHub issues: Enabled
Number of forks: 1,695
Total Stargazers: 31,702 (+0)
Total Subscribers: 220 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 33.2 hours
Mean response time: 54.3 days
90th percentile: 170.6 days
Tracked items: 476

Maintainer activity

1 person did triage or write work on this repository in the last 12 months.

Counts unlabeled, assigned, unassigned, milestoned, demilestoned, locked, unlocked over the last 12 months. These are issue and pull request events that require triage or write permission. Commits and code review are not counted. labeled and renamed are excluded because GitHub issue forms record the issue author as the actor. Figures from October 7, 2026. This count is not comparable across projects: each project's automation decides which of these events a person emits.

How this project is maintained

Roughly one issue in three opened in the past year never receives a reply. 99% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Work labelled "improvement" is answered fastest, typically in about 7 hours, while "bug" waits about 2 days. 69% of tracked open issues have had no activity in three months, so the open count overstates what is actively being worked. Only 38% of issues opened in the past year have been closed.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 323
New in 7 days: 2
Closed in 7 days: 2
Avg open age: 934 days
Stale 30+ days: 307
Stale 90+ days: 286

Recent activity

Opened in 7 days: 2
Closed in 7 days: 2
Comments in 7 days: 3
Events in 7 days: 4

Top labels

  • bug (452)
  • feature (64)
  • rendering (59)
  • shell (43)
  • widget (40)
  • text (35)
  • question (28)
  • help wanted (23)

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

Iced is a cross-platform GUI library for Rust that brings the simplicity and type-safety of functional reactive programming to desktop and web applications. Inspired by Elm and The Elm Architecture, Iced provides a batteries-included API that emphasizes ease of use while maintaining strong type safety guarantees. The library supports Windows, macOS, Linux, and web platforms, making it suitable for developers seeking to build responsive user interfaces across multiple operating systems.

The core architectural approach in Iced divides applications into four distinct concepts: State representing the application's data, Messages capturing user interactions and events, View logic for displaying state as widgets, and Update logic for reacting to messages and modifying state. This separation of concerns follows Elm's proven patterns and enables developers to reason about their applications more clearly. The library handles layout, event processing, and rendering automatically once these four components are defined.

Iced's feature set includes a comprehensive collection of built-in widgets such as text inputs and scrollables, with support for creating custom widgets. The library offers responsive layout capabilities and includes debug tooling with performance metrics and time traveling functionality. First-class support for async actions through futures enables developers to handle asynchronous operations naturally within the reactive framework. The ecosystem is deliberately modular, allowing developers to use only the components they need.

The rendering architecture is renderer-agnostic, with two built-in renderers available. The iced_wgpu renderer supports Vulkan, Metal, and DirectX 12 through the wgpu library, while iced_tiny_skia provides a software-based fallback option. This flexibility allows applications to choose the rendering backend that best suits their requirements. A windowing shell is included to handle platform-specific window management concerns.

The repository's contributor base overlaps with major projects including Microsoft's VSCode, the Rust language repository, and Microsoft's TypeScript project, indicating its relevance within the broader Rust ecosystem.

Iced originated as an experimental attempt to bring Elm's simplicity into Coffee, a 2D game library, with initial development occurring in May 2019. The project evolved from a renderer-agnostic library into a comprehensive, end-user-focused GUI framework while maintaining its modular design philosophy. The library is currently marked as experimental software, with an active roadmap and ongoing development. Iced's development is sponsored by the Cryptowatch team at Kraken.com, providing sustained support for the project's evolution.