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.
- 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)
NewWidgetAPI, 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) Lengthtype, 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.
- @not-my-profile made their first contribution in https://github.com/linebender/xilem/pull/977
- @DataTriny made their first contribution in https://github.com/linebender/xilem/pull/989
- @ofluffydev made their first contribution in https://github.com/linebender/xilem/pull/994
- @alexmoon made their first contribution in https://github.com/linebender/xilem/pull/999
- @dbuch made their first contribution in https://github.com/linebender/xilem/pull/1100
- @tannal made their first contribution in https://github.com/linebender/xilem/pull/1124
- @KiranWells made their first contribution in https://github.com/linebender/xilem/pull/1168
- @StephanvanSchaik made their first contribution in https://github.com/linebender/xilem/pull/1204
- @pufmat made their first contribution in https://github.com/linebender/xilem/pull/1246
- @nixonyh made their first contribution in https://github.com/linebender/xilem/pull/1253
- @xb284524239 made their first contribution in https://github.com/linebender/xilem/pull/1348
- @jakobhellermann made their first contribution in https://github.com/linebender/xilem/pull/1372
- @Retype15 made their first contribution in https://github.com/linebender/xilem/pull/1378
- @ricvelozo made their first contribution in https://github.com/linebender/xilem/pull/1386
- @yu2344 made their first contribution in https://github.com/linebender/xilem/pull/1402
- @Cyncrovee made their first contribution in https://github.com/linebender/xilem/pull/1406
- @StT191 made their first contribution in https://github.com/linebender/xilem/pull/1427
Full Changelog: https://github.com/linebender/xilem/compare/v0.3.0...v0.4.0
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.
- @matthunz made their first contribution in https://github.com/linebender/xilem/pull/286
- @keeslinp made their first contribution in https://github.com/linebender/xilem/pull/285
- @alexpyattaev made their first contribution in https://github.com/linebender/xilem/pull/304
- @bram209 made their first contribution in https://github.com/linebender/xilem/pull/308
- @johanholmerin made their first contribution in https://github.com/linebender/xilem/pull/418
- @cfagot made their first contribution in https://github.com/linebender/xilem/pull/417
- @werickdasilva made their first contribution in https://github.com/linebender/xilem/pull/453
- @casey made their first contribution in https://github.com/linebender/xilem/pull/466
- @jaredoconnell made their first contribution in https://github.com/linebender/xilem/pull/467
- @edgy-sphere made their first contribution in https://github.com/linebender/xilem/pull/483
- @RagibHasin made their first contribution in https://github.com/linebender/xilem/pull/489
- @rustui made their first contribution in https://github.com/linebender/xilem/pull/508
- @crockeo made their first contribution in https://github.com/linebender/xilem/pull/476
- @matta made their first contribution in https://github.com/linebender/xilem/pull/533
- @failingprovince made their first contribution in https://github.com/linebender/xilem/pull/582
- @simbleau made their first contribution in https://github.com/linebender/xilem/pull/299
- @melix99 made their first contribution in https://github.com/linebender/xilem/pull/671
- @viktorstrate made their first contribution in https://github.com/linebender/xilem/pull/735
- @KGrewal1 made their first contribution in https://github.com/linebender/xilem/pull/752
- @Long0x0 made their first contribution in https://github.com/linebender/xilem/pull/777
- @ArtyomSinyugin made their first contribution in https://github.com/linebender/xilem/pull/797
- @eugenesvk made their first contribution in https://github.com/linebender/xilem/pull/861
- @platlas made their first contribution in https://github.com/linebender/xilem/pull/889
- @alexjg made their first contribution in https://github.com/linebender/xilem/pull/922
- @Azorlogh made their first contribution in https://github.com/linebender/xilem/pull/927
Full Changelog: https://github.com/linebender/xilem/compare/v0.1.0...v0.3.0
Tree Arena 0.1.0
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.
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.
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.