linebender/xilem
 Watch   
 Star   
 Fork   
2025-10-29 17:21:11
xilem

v0.4.0

Name Crates.io Docs
xilem Crates.io Docs
xilem_web Crates.io Docs
xilem_core Crates.io Docs
masonry Crates.io Docs
masonry_winit Crates.io Docs
masonry_testing Crates.io Docs
masonry_core Crates.io Docs

This release has an MSRV of 1.88.

In the nearly six months since the last release, we have put a lot of focus into making Xilem and Masonry more suitable for general use. In addition, we have gained several important features, including initial support for using Masonry with multiple windows. As Xilem and Masonry are beginning to move towards improved stability, we plan to start keeping a changelog after this release. Note that this is alpha-quality software. There are plenty of missing features. We expect to continue active development, including making major breaking changes.

Highlights

  • Styling properties can now be set in Xilem applications. (#964, #1278)
  • New crate layout, including the new Masonry Core (#1044) and Masonry Testing. (#1048)
  • Multiple window support. (#1038, #992, #1388)
  • Properties for more widgets. (#1056, #1054, #1053, and others)
  • Placehero, a new hero example which is a Mastodon client. This is still in very early stages.
  • The app state is available in Xilem's reconciliation (#1079), allowing improved API for lens. (#1094)
  • We now use wgpu 26, which matches Bevy 0.17. (#1413)
  • Clearer Flex handling in Xilem, with the axis explicitly specified by default. (#1348)
  • More modern default style. (#1096)
  • Use of Anymore for improved debugging. (#1170, #1170, #1178)
  • Early environment/context support in Xilem. (#1142)
  • NewWidget API, to encapsulate metadata required to create a widget. (#1215)
  • Basic text-only clipboard support. (#1237)
  • Associated type (Action) indicating what action a widget will emit. (#1212)
  • Length type, which encodes logical pixels in the type system. (#1250)
  • New slider widget. (#1378)
  • Blinking text input caret/cursor. (#1397)
  • Basic layer system. (#1405)
  • UI Events v0.2.0. (#1103)
  • Significantly improved and widened automated tests of Masonry.
  • Many improvements to documentation.
  • Better keyboard navigation support.

This release also corresponds with the v0.2.0 release of Tree Arena.

This is the crate used in Masonry to store widgets.

Crates.io | Docs


New Contributors

Full Changelog: https://github.com/linebender/xilem/compare/v0.3.0...v0.4.0

2025-05-11 15:47:12
xilem

v0.3.0

Name Crates.io Docs
xilem Crates.io Docs
xilem_web Crates.io Docs
xilem_core Crates.io Docs
masonry Crates.io Docs
masonry_winit Crates.io Docs

This release has an MSRV of 1.86.

Another year has passed in Xilem's development and so it's time for another release. Given the experimental nature of this work, things change often and a lot. Thus we aren't yet keeping a changelog. However, this is the cumulative release of our last year's work. During this period we merged 501 pull requests authored by 40 contributors in this repository alone. The true depth of our work goes far beyond that because our stack is spread across many repositories.

This is alpha-quality software. There are plenty of missing features and other issues. We expect to continue very active development.

New Contributors

Full Changelog: https://github.com/linebender/xilem/compare/v0.1.0...v0.3.0

2025-05-11 04:03:16
xilem

Tree Arena 0.1.0

Crates.io | Docs

This release has an MSRV of 1.86.

A tree for use in Masonry, with a safe and an unsafe version. The safe tree is known to work, and serves as the baseline implementation and is used by default. The unsafe tree leverages a hashmap as an arena and is designed for higher performance: it leverages unsafe code to achieve this. The unsafe tree is not yet fully tested, and is not used by default.

2024-05-08 04:56:58
xilem

v0.1.0

We are proud to announce that after years of development we have released v0.1.0 of Xilem!

Xilem is a UI toolkit. It combines ideas from Flutter, SwiftUI, and Elm. Like all of these, it uses lightweight view objects, diffing them to provide minimal updates to a retained UI. Like SwiftUI, it is strongly typed. For more details on Xilem's reactive architecture see Xilem: an architecture for UI in Rust.

Xilem's reactive layer is built on top of a wide array of foundational Rust UI projects, e.g.:

  • Widgets are provided by Masonry, which is a fork of the now discontinued Druid UI toolkit.
  • Rendering is provided by Vello, a high performance GPU compute-centric 2D renderer.
  • GPU compute infrastructure is provided by wgpu.
  • Text support is provided by Parley, Fontique, Swash, and Skrifa.
  • Accessibility is provided by AccessKit.
  • Window handling is provided by winit.

Xilem can currently be considered to be in an alpha state. Lots of things need improvements.

2024-05-08 04:56:58
xilem

Masonry 0.2.0

We are proud to announce the release of v0.2.0 of Masonry!

Masonry has migrated from using druid-shell and piet to a new stack:

  • Rendering is provided by Vello, a high performance GPU compute-centric 2D renderer.
  • GPU compute infrastructure is provided by wgpu.
  • Text support is provided by Parley, Fontique, Swash, and Skrifa.
  • Accessibility is provided by AccessKit.
  • Window handling is provided by winit.

This is alpha-quality software. There are plenty of known and unknown issues, and we expect to continue very active development.